scottmac Thu Nov 27 19:45:28 2008 UTC Modified files: (Branch: PHP_5_3) /php-src configure.in /php-src/ext/fileinfo/libmagic print.c /php-src/main snprintf.c snprintf.h Log: MFH Add asprintf, use regular system malloc and free and add checks in configure.in for the functions http://cvs.php.net/viewvc.cgi/php-src/configure.in?r1=1.579.2.52.2.77.2.33&r2=1.579.2.52.2.77.2.34&diff_format=u Index: php-src/configure.in diff -u php-src/configure.in:1.579.2.52.2.77.2.33 php-src/configure.in:1.579.2.52.2.77.2.34 --- php-src/configure.in:1.579.2.52.2.77.2.33 Mon Nov 17 15:17:49 2008 +++ php-src/configure.in Thu Nov 27 19:45:27 2008 @@ -1,4 +1,4 @@ -## $Id: configure.in,v 1.579.2.52.2.77.2.33 2008/11/17 15:17:49 dsp Exp $ -*- autoconf -*- +## $Id: configure.in,v 1.579.2.52.2.77.2.34 2008/11/27 19:45:27 scottmac Exp $ -*- autoconf -*- dnl ## Process this file with autoconf to produce a configure script. divert(1) @@ -637,6 +637,8 @@ nanosleep \ utime \ vsnprintf \ +vasprintf \ +asprintf \ ) dnl Check for getaddrinfo, should be a better way, but... http://cvs.php.net/viewvc.cgi/php-src/ext/fileinfo/libmagic/print.c?r1=1.1.2.4&r2=1.1.2.5&diff_format=u Index: php-src/ext/fileinfo/libmagic/print.c diff -u php-src/ext/fileinfo/libmagic/print.c:1.1.2.4 php-src/ext/fileinfo/libmagic/print.c:1.1.2.5 --- php-src/ext/fileinfo/libmagic/print.c:1.1.2.4 Sat Nov 22 10:29:05 2008 +++ php-src/ext/fileinfo/libmagic/print.c Thu Nov 27 19:45:27 2008 @@ -62,7 +62,7 @@ php_error_docref(NULL TSRMLS_CC, E_NOTICE, "Warning: %s", expanded_format); - efree(expanded_format); + free(expanded_format); } protected const char * http://cvs.php.net/viewvc.cgi/php-src/main/snprintf.c?r1=1.37.2.4.2.14.2.6&r2=1.37.2.4.2.14.2.7&diff_format=u Index: php-src/main/snprintf.c diff -u php-src/main/snprintf.c:1.37.2.4.2.14.2.6 php-src/main/snprintf.c:1.37.2.4.2.14.2.7 --- php-src/main/snprintf.c:1.37.2.4.2.14.2.6 Fri Nov 21 22:05:03 2008 +++ php-src/main/snprintf.c Thu Nov 27 19:45:27 2008 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: snprintf.c,v 1.37.2.4.2.14.2.6 2008/11/21 22:05:03 scottmac Exp $ */ +/* $Id: snprintf.c,v 1.37.2.4.2.14.2.7 2008/11/27 19:45:27 scottmac Exp $ */ #include "php.h" @@ -1280,9 +1280,9 @@ *buf = NULL; if (cc >= 0) { - if ((*buf = emalloc(++cc)) != NULL) { + if ((*buf = malloc(++cc)) != NULL) { if ((cc = ap_php_vsnprintf(*buf, cc, format, ap)) < 0) { - efree(*buf); + free(*buf); *buf = NULL; } } @@ -1292,6 +1292,18 @@ } /* }}} */ +PHPAPI int ap_php_asprintf(char **buf, const char *format, ...) /* {{{ */ +{ + int cc; + va_list ap; + + va_start(ap, format); + cc = vasprintf(buf, format, ap); + va_end(ap); + return cc; +} +/* }}} */ + /* * Local variables: * tab-width: 4 http://cvs.php.net/viewvc.cgi/php-src/main/snprintf.h?r1=1.32.2.3.2.5.2.3&r2=1.32.2.3.2.5.2.4&diff_format=u Index: php-src/main/snprintf.h diff -u php-src/main/snprintf.h:1.32.2.3.2.5.2.3 php-src/main/snprintf.h:1.32.2.3.2.5.2.4 --- php-src/main/snprintf.h:1.32.2.3.2.5.2.3 Fri Nov 21 22:05:03 2008 +++ php-src/main/snprintf.h Thu Nov 27 19:45:27 2008 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: snprintf.h,v 1.32.2.3.2.5.2.3 2008/11/21 22:05:03 scottmac Exp $ */ +/* $Id: snprintf.h,v 1.32.2.3.2.5.2.4 2008/11/27 19:45:27 scottmac Exp $ */ /* @@ -83,6 +83,7 @@ PHPAPI int ap_php_snprintf(char *, size_t, const char *, ...); PHPAPI int ap_php_vsnprintf(char *, size_t, const char *, va_list ap); PHPAPI int ap_php_vasprintf(char **buf, const char *format, va_list ap); +PHPAPI int ap_php_asprintf(char **buf, const char *format, ...); PHPAPI int php_sprintf (char* s, const char* format, ...) PHP_ATTRIBUTE_FORMAT(printf, 2, 3); PHPAPI char * php_gcvt(double value, int ndigit, char dec_point, char exponent, char *buf); PHPAPI char * php_conv_fp(register char format, register double num, @@ -110,10 +111,13 @@ #endif #define vsnprintf ap_php_vsnprintf -#ifdef vasprintf -#undef vasprintf -#endif +#ifndef HAVE_VASPRINTF #define vasprintf ap_php_vasprintf +#endif + +#ifndef HAVE_ASPRINTF +#define asprintf ap_php_asprintf +#endif #ifdef sprintf #undef sprintf
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php