Doh, I hadn't even thought of that, because it was called the same way earlier in the function, but I just realized that line assigned it to one of the function parameters, so it doesn't actually overwrite the original pointer (call by value).
That got rid of one of the memleak errors, but the 51-byte leak on line 230 still seems to be there. Line 230 starts with: sendmail_cmd = emalloc(strlen(sendmail_path) + strlen(qmail_from) + 2); strcpy(sendmail_cmd, sendmail_path); strcat(sendmail_cmd, " "); strcat(sendmail_cmd, qmail_from); efree(qmail_from); that's almost verbatim from stock code already in the function, which doesn't give an error. On Thu, Dec 26, 2002 at 08:11:01PM +0100, Derick Rethans wrote: > On Thu, 26 Dec 2002, Ari Pollak wrote: > > > Nope, the only thing between the emalloc() and the efree()s are strcpy, > > strcat, and php_escape_shell_cmd calls. > > ah, the escape_shell thing duplicates your string. > > Derick > > -- > > ------------------------------------------------------------------------- > Derick Rethans http://derickrethans.nl/ > PHP Magazine - PHP Magazine for Professionals http://php-mag.net/ > ------------------------------------------------------------------------- > -- ___ ___ / _ | / _ \ Ari Pollak - [EMAIL PROTECTED] - www.aripollak.com / __ |/ ___/ /_/ |_/_/ -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, visit: http://www.php.net/unsub.php