Re: getopt() and strdup()

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: getopt() and strdup()
Date: 2012-10-09 01:03:37
Message-ID: 20121009010337.GB28752@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, Oct 8, 2012 at 04:33:29PM -0400, Tom Lane wrote:
> Bruce Momjian <bruce(at)momjian(dot)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(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ It's impossible for everything to be true. +

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2012-10-09 01:13:28 Re: Support for REINDEX CONCURRENTLY
Previous Message Jim Nasby 2012-10-08 23:39:56 Re: Deparsing DDL command strings