Skip site navigation (1) Skip section navigation (2)

Re: get_progname and .exe suffix

From: Andrew Dunstan <andrew(at)dunslane(dot)net>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers-win32 <pgsql-hackers-win32(at)postgresql(dot)org>
Subject: Re: get_progname and .exe suffix
Date: 2004-10-16 19:37:36
Message-ID: 41717880.8050202@dunslane.net (view raw or flat)
Thread:
Lists: pgsql-hackers-win32

Tom Lane wrote:

>Andrew Dunstan <andrew(at)dunslane(dot)net> writes:
>  
>
>>Tom Lane wrote:
>>    
>>
>>>What would break if we caused get_progname itself to strip the suffix?
>>>      
>>>
>
>  
>
>>Yes. get_progname() actually just returns a pointer to one past the last 
>>directory separator it finds in its argument string. Having it strip the 
>>.exe directly would in effect involve mangling argv[0]. That's what 
>>makes me slightly nervous about it. We could have it strdup() the result 
>>and then mangle that - note that it is called by postmaster before we 
>>set up any memory context stuff.
>>    
>>
>
>Seems reasonable.  What I was more worried about though was whether
>there are any callers that actually need a non-stripped result.
>  
>

Ok, I will have a look. grep tells me it's called in these places:

./src/backend/postmaster/postmaster.c
./src/bin/initdb/initdb.c
./src/bin/pg_config/pg_config.c
./src/bin/pg_controldata/pg_controldata.c
./src/bin/pg_ctl/pg_ctl.c
./src/bin/pg_dump/pg_dump.c
./src/bin/pg_dump/pg_dumpall.c
./src/bin/pg_dump/pg_restore.c
./src/bin/pg_resetxlog/pg_resetxlog.c
./src/bin/psql/startup.c
./src/bin/scripts/clusterdb.c
./src/bin/scripts/common.c
./src/bin/scripts/createdb.c
./src/bin/scripts/createlang.c
./src/bin/scripts/createuser.c
./src/bin/scripts/dropdb.c
./src/bin/scripts/droplang.c
./src/bin/scripts/dropuser.c
./src/bin/scripts/vacuumdb.c
./src/interfaces/ecpg/preproc/ecpg.c

cheers

andrew




In response to

pgsql-hackers-win32 by date

Next:From: Magnus HaganderDate: 2004-10-17 15:31:32
Subject: Win32 & NLS
Previous:From: Tom LaneDate: 2004-10-16 16:57:26
Subject: Re: get_progname and .exe suffix

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group