1818 *
1919 *
2020 * IDENTIFICATION
21- * $PostgreSQL: pgsql/src/backend/postmaster/syslogger.c,v 1.39 2007/09/20 18:19:08 adunstan Exp $
21+ * $PostgreSQL: pgsql/src/backend/postmaster/syslogger.c,v 1.40 2007/09/22 18:19:18 tgl Exp $
2222 *
2323 *-------------------------------------------------------------------------
2424 */
@@ -608,10 +608,8 @@ static pid_t
608608syslogger_forkexec (void )
609609{
610610char * av [10 ];
611- int ac = 0 ,
612- bufc = 0 ,
613- i ;
614- char numbuf [2 ][32 ];
611+ int ac = 0 ;
612+ char filenobuf [32 ];
615613
616614av [ac ++ ]= "postgres" ;
617615av [ac ++ ]= "--forklog" ;
@@ -620,21 +618,18 @@ syslogger_forkexec(void)
620618/* static variables (those not passed by write_backend_variables) */
621619#ifndef WIN32
622620if (syslogFile != NULL )
623- snprintf (numbuf [bufc ++ ],32 ,"%d" ,fileno (syslogFile ));
621+ snprintf (filenobuf ,sizeof (filenobuf ),"%d" ,
622+ fileno (syslogFile ));
624623else
625- strcpy (numbuf [ bufc ++ ] ,"-1" );
624+ strcpy (filenobuf ,"-1" );
626625#else /* WIN32 */
627626if (syslogFile != NULL )
628- snprintf (numbuf [ bufc ++ ], 32 ,"%ld" ,
627+ snprintf (filenobuf , sizeof ( filenobuf ) ,"%ld" ,
629628_get_osfhandle (_fileno (syslogFile )));
630629else
631- strcpy (numbuf [ bufc ++ ] ,"0" );
630+ strcpy (filenobuf ,"0" );
632631#endif /* WIN32 */
633-
634- /* Add to the arg list */
635- Assert (bufc <=lengthof (numbuf ));
636- for (i = 0 ;i < bufc ;i ++ )
637- av [ac ++ ]= numbuf [i ];
632+ av [ac ++ ]= filenobuf ;
638633
639634av [ac ]= NULL ;
640635Assert (ac < lengthof (av ));
@@ -652,7 +647,7 @@ syslogger_parseArgs(int argc, char *argv[])
652647{
653648int fd ;
654649
655- Assert (argc == 5 );
650+ Assert (argc == 4 );
656651argv += 3 ;
657652
658653#ifndef WIN32