]> granicus.if.org Git - php/commitdiff
Fixed memory leak in vfprintf
authorXinchen Hui <laruence@gmail.com>
Thu, 6 Mar 2014 10:47:43 +0000 (18:47 +0800)
committerXinchen Hui <laruence@gmail.com>
Thu, 6 Mar 2014 10:47:43 +0000 (18:47 +0800)
ext/standard/formatted_print.c

index 576b611e8acdaa43a2212cb15641c90453b35971..df5b22cdf4d6b76dea854671bb9ebf296b3f64db 100644 (file)
@@ -388,6 +388,7 @@ php_formatted_print(int param_count, int use_array, int format_offset TSRMLS_DC)
                WRONG_PARAM_COUNT_WITH_RETVAL(NULL);
        }
        
+       convert_to_string_ex(&args[format_offset]);
        if (use_array) {
                int i = 1;
                zval *zv;
@@ -412,7 +413,6 @@ php_formatted_print(int param_count, int use_array, int format_offset TSRMLS_DC)
                format_offset = 0;
        }
        
-       convert_to_string_ex(&args[format_offset]);
        format = Z_STRVAL(args[format_offset]);
        result = STR_ALLOC(size, 0);