Re: [9.3 bug fix] ECPG does not escape backslashes

From: Andrew Dunstan <andrew(at)dunslane(dot)net>
To: MauMau <maumau307(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: [9.3 bug fix] ECPG does not escape backslashes
Date: 2013-07-04 12:50:34
Message-ID: 51D56F9A.4060303@dunslane.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


On 07/04/2013 08:31 AM, Michael Meskes wrote:
> On Thu, Jul 04, 2013 at 07:58:39AM -0400, Andrew Dunstan wrote:
>>> michael(at)feivel:~$ grep line test\\\\a/init.c |head -1
>>> #line 1 "test\\a/init.pgc"
>> ...
>>
>> Really? I'd expect to see 4 backslashes in the #line directive, I think.
> Eh, why? The four backslashes come are two that are escaped for shell usage.
> The directory name is in my example was "test\\a". What did I miss?
>

Isn't the argument to #line a C string literal in which one would expect
backslashes to be escaped? If not, how would it show a filename
containing a '"' character?

[andrew(at)emma inst.92.5701]$ bin/ecpg x\\\"a/y.pgc
[andrew(at)emma inst.92.5701]$ grep line x\\\"a/y.c
#line 1 "x\"a/y.pgc"

This must surely be wrong.

cheers

andrew

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2013-07-04 12:58:18 Re: [9.3 bug fix] ECPG does not escape backslashes
Previous Message Dev Kumkar 2013-07-04 12:46:59 Grouping Sets