You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by wr...@apache.org on 2002/08/20 20:32:09 UTC

cvs commit: apr/misc/win32 start.c

wrowe       2002/08/20 11:32:09

  Modified:    .        CHANGES
               misc/win32 start.c
  Log:
    Fix bug reported as PR 11854.
  
  Revision  Changes    Path
  1.890     +4 -0      httpd-2.0/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/CHANGES,v
  retrieving revision 1.889
  retrieving revision 1.890
  diff -u -r1.889 -r1.890
  --- CHANGES	19 Aug 2002 20:40:08 -0000	1.889
  +++ CHANGES	20 Aug 2002 18:32:09 -0000	1.890
  @@ -1,5 +1,9 @@
   Changes with Apache 2.0.41
   
  +  *) Fix bug where environment or command line arguments containing 
  +     non-ASCII-7 characters would cause the Win32 child process creation
  +     to fail.  PR 11854  [William Rowe]
  +
     *) Bug #11213.. make module loading error messages more informative 
        [Ian Darwin <Ia...@darwinsys.com>]
   
  
  
  
  1.40      +10 -3     apr/misc/win32/start.c
  
  Index: start.c
  ===================================================================
  RCS file: /home/cvs/apr/misc/win32/start.c,v
  retrieving revision 1.39
  retrieving revision 1.40
  diff -u -r1.39 -r1.40
  --- start.c	10 Jul 2002 06:01:12 -0000	1.39
  +++ start.c	20 Aug 2002 18:32:09 -0000	1.40
  @@ -133,6 +133,12 @@
                                                const char * const * *argv, 
                                                const char * const * *env)
   {
  +    apr_status_t rv = apr_initialize();
  +
  +    if (rv != APR_SUCCESS) {
  +        return rv;
  +    }
  +
   #if APR_HAS_UNICODE_FS
       IF_WIN_OS_IS_UNICODE
       {
  @@ -142,9 +148,11 @@
           int dupenv;
   
           if (apr_app_init_complete) {
  -            return apr_initialize();
  +            return rv;
           }
   
  +        apr_app_init_complete = 1;
  +
           sysstr = GetCommandLineW();
           if (sysstr) {
               wstrs = CommandLineToArgvW(sysstr, &wstrc);
  @@ -178,10 +186,9 @@
               free(wenv);
           }
   
  -        apr_app_init_complete = 1;
       }
   #endif
  -    return apr_initialize();
  +    return rv;
   }
   
   static int initialized = 0;