fielding    99/03/07 05:51:20

  Modified:    src/ap   ap_execve.c
  Log:
  Added error messages for malloc calls.
  
  Submitted by: John Bley <[EMAIL PROTECTED]>
  Reviewed by:  Roy Fielding
  
  Revision  Changes    Path
  1.12      +10 -2     apache-1.3/src/ap/ap_execve.c
  
  Index: ap_execve.c
  ===================================================================
  RCS file: /home/cvs/apache-1.3/src/ap/ap_execve.c,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- ap_execve.c       1999/01/01 19:04:36     1.11
  +++ ap_execve.c       1999/03/07 13:51:19     1.12
  @@ -126,8 +126,10 @@
       }
       va_end(adummy);
   
  -    if ((argv = (char **) malloc((argc + 2) * sizeof(*argv))) == NULL)
  +    if ((argv = (char **) malloc((argc + 2) * sizeof(*argv))) == NULL) {
  +     fprintf(stderr, "Ouch!  Out of memory in ap_execle()!\n");
        return -1;
  +    }
   
       /* Pass two --- copy the argument strings into the result space */
       va_start(adummy, argv0);
  @@ -222,8 +224,10 @@
        else {
            int i = count_args(argv) + 1;   /* +1 for leading SHELL_PATH */
   
  -         if ((script_argv = malloc(sizeof(*script_argv) * i)) == NULL)
  +         if ((script_argv = malloc(sizeof(*script_argv) * i)) == NULL) {
  +             fprintf(stderr, "Ouch!  Out of memory in ap_execve()!\n");
                return -1;
  +         }
   
            script_argv[0] = SHELL_PATH;
   
  @@ -345,6 +349,10 @@
   
            newargv = (char **) malloc((p - lbuf + 1)
                         + (i + sargc + 1) * sizeof(*newargv));
  +         if (newargv == NULL) {
  +             fprintf(stderr, "Ouch!  Out of memory in hashbang()!\n");
  +             return NULL;
  +         }
            ws = &((char *) newargv)[(i + sargc + 1) * sizeof(*newargv)];
   
            /* Copy entries to allocated memory */
  
  
  

Reply via email to