]> granicus.if.org Git - php/commitdiff
- fix bug #60879, unserialize does not invoke __wakeup
authorPierre Joye <pajoye@php.net>
Tue, 28 Feb 2012 18:36:10 +0000 (18:36 +0000)
committerPierre Joye <pajoye@php.net>
Tue, 28 Feb 2012 18:36:10 +0000 (18:36 +0000)
ext/standard/var_unserializer.c
ext/standard/var_unserializer.re

index 5ea161ca3c6471633ee8048374997e60bd952b0b..be10bc49dd9d4455ce12ff2e287012ca58ad3614 100644 (file)
@@ -375,6 +375,9 @@ static inline long object_common1(UNSERIALIZE_PARAMETER, zend_class_entry *ce)
        return elements;
 }
 
+#ifdef PHP_WIN32
+# pragma optimize("", off)
+#endif
 static inline int object_common2(UNSERIALIZE_PARAMETER, long elements)
 {
        zval *retval_ptr = NULL;
@@ -399,6 +402,9 @@ static inline int object_common2(UNSERIALIZE_PARAMETER, long elements)
        return finish_nested_data(UNSERIALIZE_PASSTHRU);
 
 }
+#ifdef PHP_WIN32
+# pragma optimize("", on)
+#endif
 
 PHPAPI int php_var_unserialize(UNSERIALIZE_PARAMETER)
 {
index 7ea277b8b2206fe1a79d336931b9d014521639fd..860b3947b9495680a69f4dbd22cc65fc95ec070e 100644 (file)
@@ -379,6 +379,9 @@ static inline long object_common1(UNSERIALIZE_PARAMETER, zend_class_entry *ce)
        return elements;
 }
 
+#ifdef PHP_WIN32
+# pragma optimize("", off)
+#endif
 static inline int object_common2(UNSERIALIZE_PARAMETER, long elements)
 {
        zval *retval_ptr = NULL;
@@ -403,6 +406,9 @@ static inline int object_common2(UNSERIALIZE_PARAMETER, long elements)
        return finish_nested_data(UNSERIALIZE_PASSTHRU);
 
 }
+#ifdef PHP_WIN32
+# pragma optimize("", on)
+#endif
 
 PHPAPI int php_var_unserialize(UNSERIALIZE_PARAMETER)
 {