no more PG(error_handling) in PHP-5.3
authorMichael Wallner <mike@php.net>
Wed, 12 Mar 2008 07:46:32 +0000 (07:46 +0000)
committerMichael Wallner <mike@php.net>
Wed, 12 Mar 2008 07:46:32 +0000 (07:46 +0000)
http_api.c
missing.h
php_http_std_defs.h

index 4ab7d7e..77b1134 100644 (file)
@@ -109,7 +109,7 @@ void _http_error_ex(long type TSRMLS_DC, long code, const char *format, ...)
        
        va_start(args, format);
 #ifdef ZEND_ENGINE_2
-       if ((type == E_THROW) || (PG(error_handling) == EH_THROW)) {
+       if ((type == E_THROW) || (GLOBAL_ERROR_HANDLING == EH_THROW)) {
                char *message;
                zend_class_entry *ce = http_exception_get_for_code(code);
                
@@ -117,7 +117,7 @@ void _http_error_ex(long type TSRMLS_DC, long code, const char *format, ...)
                        vspprintf(&message, 0, format, args);
                        zend_throw_exception(ce, message, code TSRMLS_CC);
                        efree(message);
-               } http_catch(PG(exception_class) ? PG(exception_class) : HTTP_EX_DEF_CE);
+               } http_catch(GLOBAL_EXCEPTION_CLASS ? GLOBAL_EXCEPTION_CLASS : HTTP_EX_DEF_CE);
        } else
 #endif
        php_verror(NULL, "", type, format, args TSRMLS_CC);
index 703f2b1..edc3af0 100644 (file)
--- a/missing.h
+++ b/missing.h
 
 #if (PHP_MAJOR_VERSION == 5) && (PHP_MINOR_VERSION >= 3)
 #      define HTTP_ZAPI_CONST_CAST(t) (const t)
+#      define GLOBAL_ERROR_HANDLING EG(error_handling)
+#      define GLOBAL_EXCEPTION_CLASS EG(exception_class)
 #else
 #      define HTTP_ZAPI_CONST_CAST(t) (t)
+#      define GLOBAL_ERROR_HANDLING PG(error_handling)
+#      define GLOBAL_EXCEPTION_CLASS PG(exception_class)
 #endif
 
 #if (PHP_MAJOR_VERSION == 5) && (PHP_MINOR_VERSION == 0)
index d20579d..fdbfafa 100644 (file)
@@ -219,8 +219,8 @@ typedef int STATUS;
 #ifdef ZEND_ENGINE_2
 #      define with_error_handling(eh, ec) \
        { \
-               error_handling_t __eh = PG(error_handling); \
-               zend_class_entry *__ec= PG(exception_class); \
+               error_handling_t __eh = GLOBAL_ERROR_HANDLING; \
+               zend_class_entry *__ec= GLOBAL_EXCEPTION_CLASS; \
                php_set_error_handling(eh, ec TSRMLS_CC);
 #      define end_error_handling() \
                php_set_error_handling(__eh, __ec TSRMLS_CC); \