Tom Lane wrote:
> Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> writes:
> > The problem is that for EXEC_BACKEND, which is the default for WIN32 and
> > what I used for testing, progname is NULL because we do not set it after
> > the fork/exec. Most versions of printf report "(null)" for a null
> > argument to printf("%s"), but our port/snprintf.c version aborts, which
> > is probably better in terms of finding bugs.
> Good catch.
> > The attached patch fixes the problem by setting progname early in
> > main(), like we do for all other applications.
> It'd probably be best to strdup() argv, because of the likelihood
> that the argv area will get clobbered at some point by ps_status.c.
> It was OK to have a private static in postmaster.c, because the
> postmaster doesn't ever call ps_status.c, but if we are going to expose
> the variable in child processes it needs to be more globally valid.
> I see that get_progname strdup's its argument in some cases but not
> all --- so simplest fix is to make it always do so.
OK, new version that updates get_progname to always strdup().
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
In response to
pgsql-bugs by date
|Next:||From: Bruce Momjian||Date: 2006-01-31 21:54:24|
|Subject: Re: BUG #2220: PostgreSQL-JDBC 8.1-404 fails to compile with|
|Previous:||From: Michael Fuhr||Date: 2006-01-31 20:37:30|
|Subject: Re: BUG #2224: unlogical syntax error|
pgsql-patches by date
|Next:||From: Bruce Momjian||Date: 2006-01-31 21:42:22|
|Subject: Re: pg_restore COPY error handling|
|Previous:||From: Tom Lane||Date: 2006-01-31 20:26:03|
|Subject: Re: [BUGS] BUG #2195: log_min_messages crash server when in DEBUG3 to |