moriyoshi               Sun Feb 29 00:21:36 2004 EDT

  Modified files:              
    /php-src/ext/wddx   wddx.c 
  Log:
  - Bugfix #27287 (wddx segfaults during deserialization)
  
  
http://cvs.php.net/diff.php/php-src/ext/wddx/wddx.c?r1=1.109&r2=1.110&ty=u
Index: php-src/ext/wddx/wddx.c
diff -u php-src/ext/wddx/wddx.c:1.109 php-src/ext/wddx/wddx.c:1.110
--- php-src/ext/wddx/wddx.c:1.109       Thu Jan  8 03:17:44 2004
+++ php-src/ext/wddx/wddx.c     Sun Feb 29 00:21:36 2004
@@ -16,7 +16,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: wddx.c,v 1.109 2004/01/08 08:17:44 andi Exp $ */
+/* $Id: wddx.c,v 1.110 2004/02/29 05:21:36 moriyoshi Exp $ */
 
 #include "php.h"
 
@@ -883,7 +883,7 @@
        st_entry                        *ent1, *ent2;
        wddx_stack                      *stack = (wddx_stack *)user_data;
        HashTable                       *target_hash;
-       zend_class_entry        *ce;
+       zend_class_entry        **pce;
        zval                            *obj;
        zval                            *tmp;
        TSRMLS_FETCH();
@@ -945,15 +945,14 @@
 
                                                
zend_str_tolower(Z_STRVAL_P(ent1->data), Z_STRLEN_P(ent1->data));
                                                if (zend_hash_find(EG(class_table), 
Z_STRVAL_P(ent1->data),
-                                                                                  
Z_STRLEN_P(ent1->data)+1, (void **) &ce)==FAILURE) {
+                                                                                  
Z_STRLEN_P(ent1->data)+1, (void **) &pce)==FAILURE) {
                                                        incomplete_class = 1;
-                                                       ce = PHP_IC_ENTRY;
+                                                       pce = &PHP_IC_ENTRY;
                                                }
 
                                                /* Initialize target object */
                                                MAKE_STD_ZVAL(obj);
-                                               INIT_PZVAL(obj);
-                                               object_init_ex(obj, ce);
+                                               object_init_ex(obj, *pce);
                                                
                                                /* Merge current hashtable with 
object's default properties */
                                                zend_hash_merge(Z_OBJPROP_P(obj),

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to