Changeset 281 for trunk/ext/php

Show
Ignore:
Timestamp:
10/17/2007 12:14:30 (13 months ago)
Author:
indeyets
Message:

fixed unserialize

Location:
trunk/ext/php
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/ext/php/phpext.c

    r280 r281  
    383383                                char *classname = emalloc(classname_len + 1); 
    384384                                zend_class_entry **ce; 
    385                                 zval param; 
     385                                zval *param; 
    386386                                TSRMLS_FETCH(); 
    387387 
     
    402402 
    403403                                object_init_ex(o, *ce); 
    404                                 ZVAL_STRINGL(&param, n->data.str->ptr, n->data.str->len, 1); 
    405                                 zend_call_method_with_1_params(&o, *ce, NULL, "unserialize", NULL, &param); 
     404                                MAKE_STD_ZVAL(param); 
     405                                ZVAL_STRINGL(param, n->data.str->ptr, n->data.str->len, 1); 
     406                                zend_call_method_with_1_params(&o, *ce, NULL, "unserialize", NULL, param); 
     407                                zval_ptr_dtor(&param); 
    406408                        } else { 
    407409                                php_error(E_NOTICE, "syck extension didn't handle %s type => treating as a string", n->type_id); 
  • trunk/ext/php/phpunit-tests/TestDump.php

    r279 r281  
    6060        $this->assertEquals($obj, syck_load(syck_dump($obj))); 
    6161    } 
     62 
     63    public function testDatetime() 
     64    { 
     65        $obj = new DateTime(); 
     66        $this->assertEquals($obj, syck_load(syck_dump($obj))); 
     67    } 
    6268}