Thread

  1. BUG #1338: Problem running PostgreSQL as service

    PostgreSQL Bugs List <pgsql-bugs@postgresql.org> — 2004-12-05T09:44:02Z

    The following bug has been logged online:
    
    Bug reference:      1338
    Logged by:          PJMODOS
    
    Email address:      pjmodos@parba.cz
    
    PostgreSQL version: 8.0 Beta
    
    Operating system:   Windows 2000
    
    Description:        Problem running PostgreSQL as service
    
    Details: 
    
    In 8.0 RC1, because of bug in -D parsing in pg_ctl I am unable to run 
    postgres as service when I have space in data path - when i register it with 
    pg_ctl register -D "C:\Program Files\PostgreSQL\data" and try to run it then 
    it won't work and in event log I have this: pg_ctl: no database directory 
    specified and environment variable PGDATA unset. 
    
    
    I have found very simple solution, just added + 1 in one of xmallocs and it 
    seems to work, diff follows: 
    
    --- pg_ctl.c	Sat Nov 27 19:51:06 2004
    +++ pg_ctl_new.c	Sun Dec 05 10:21:40 2004
    @@ -1289,7 +1289,7 @@
     			{
     				case 'D':
     					{
    -						char	   *pgdata_D = xmalloc(strlen(optarg));
    +						char	   *pgdata_D = xmalloc(strlen(optarg) + 1);
     						char	   *env_var = xmalloc(strlen(optarg) + 8);
     
     						strcpy(pgdata_D, optarg);