]> granicus.if.org Git - php/commitdiff
- fix PHP_OUTPUT_CONFLICT macro
authorMichael Wallner <mike@php.net>
Wed, 30 Aug 2006 22:34:32 +0000 (22:34 +0000)
committerMichael Wallner <mike@php.net>
Wed, 30 Aug 2006 22:34:32 +0000 (22:34 +0000)
main/php_output.h

index 8a4c8567a5783d032056269385d19dec4f7118ee..48a70e289fef8ab6838371c68b7c11a236a51d89 100644 (file)
@@ -242,15 +242,16 @@ PHPAPI int php_output_handler_reverse_conflict_register(zval *handler_name, php_
 
 #define PHP_OUTPUT_CONFLICT(check_name, action) \
 { \
-       char *tmp_s = (check_name); \
+       int tmp_i; \
        zval tmp_z; \
+       char *tmp_s = (check_name); \
        INIT_PZVAL(&tmp_z); \
        ZVAL_ASCII_STRING(&tmp_z, tmp_s, ZSTR_DUPLICATE); \
-       if (php_output_handler_conflict(handler_name, &tmp_z TSRMLS_CC)) { \
-               zval_dtor(&tmp_z); \
+       tmp_i = php_output_handler_conflict(handler_name, &tmp_z TSRMLS_CC); \
+       zval_dtor(&tmp_z); \
+       if (tmp_i) { \
                action; \
        } \
-       zval_dtor(&tmp_z); \
 }
 
 PHPAPI php_output_handler_alias_ctor_t *php_output_handler_alias(zval *handler_name TSRMLS_DC);