Re: getopt() and strdup() - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: getopt() and strdup()
Date
Msg-id 20121009010337.GB28752@momjian.us
Whole thread Raw
In response to Re: getopt() and strdup()  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: getopt() and strdup()  (Bruce Momjian <bruce@momjian.us>)
List pgsql-hackers
On Mon, Oct  8, 2012 at 04:33:29PM -0400, Tom Lane wrote:
> Bruce Momjian <bruce@momjian.us> writes:
> > A while ago I noticed that in some places we strdup/pg_strdup() optarg
> > strings from getopt(), and in some places we don't.
> 
> > If we needed the strdup(), the missing cases should generate errors.  If
> > we don't need them, the strdup() is unnecessary, and research confirms
> > they are unnecessary.  Should we remove the extra strdup/pg_strdup()
> > calls, for consistency.
> 
> What research?  Given the number of different ways argv[] is handled
> on different platforms (cf ps_status.c), I am very unwilling to trust
> that it's safe to hang onto an argv string for long without strdup'ing
> it.
> 
> > I think we might have had old platforms that required it, but none are
> > still supported today.
> 
> And what's your grounds for stating that?  All the alternatives in
> ps_status.c are still live code AFAICS.
> 
> My feeling is it's more likely to be a good idea to be adding strdup's
> than removing them.

Well, what we have now is either wrong or over-kill --- I don't know for
sure which.

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com
 + It's impossible for everything to be true. +



pgsql-hackers by date:

Previous
From: Jim Nasby
Date:
Subject: Re: Deparsing DDL command strings
Next
From: Michael Paquier
Date:
Subject: Re: Support for REINDEX CONCURRENTLY