cvs: /php4/ext/session session.c php_session.h

From: Date: Thu, 16 Sep 1999 12:55:32 +0000
Subject: cvs: /php4/ext/session session.c php_session.h
Groups: php.version4 
Request: Send a blank email to php-version4+get-4515@lists.php.net to get a copy of this message
sas Thu Sep 16 08:55:32 1999 EDT Modified files: /php4/ext/session session.c php_session.h Log: wddx decode works as well Index: php4/ext/session/session.c diff -u php4/ext/session/session.c:1.49 php4/ext/session/session.c:1.50 --- php4/ext/session/session.c:1.49 Thu Sep 16 08:00:58 1999 +++ php4/ext/session/session.c Thu Sep 16 08:55:31 1999 @@ -214,7 +214,6 @@ wddx_packet *packet; char *key; zval **struc; - char *buf; ELS_FETCH(); packet = _php_wddx_constructor(); @@ -250,13 +249,14 @@ char tmp[128]; ulong idx; int hash_type; + int dofree = 1; ELS_FETCH(); if(vallen == 0) return FAILURE; MAKE_STD_ZVAL(retval); - _php_wddx_deserialize(val, retval); + _php_wddx_deserialize_ex(val, vallen, retval); for(zend_hash_internal_pointer_reset(retval->value.ht); zend_hash_get_current_data(retval->value.ht, (void **) &ent) == SUCCESS; @@ -267,10 +267,14 @@ case HASH_KEY_IS_LONG: sprintf(tmp, "%ld", idx); key = tmp; + dofree = 0; case HASH_KEY_IS_STRING: zval_add_ref(ent); zend_hash_update(&EG(symbol_table), key, strlen(key) + 1, ent, sizeof(ent), NULL); + PS_ADD_VAR(key); + if(dofree) efree(key); + dofree = 1; } } Index: php4/ext/session/php_session.h diff -u php4/ext/session/php_session.h:1.17 php4/ext/session/php_session.h:1.18 --- php4/ext/session/php_session.h:1.17 Thu Sep 16 08:00:58 1999 +++ php4/ext/session/php_session.h Thu Sep 16 08:55:31 1999 @@ -148,11 +148,9 @@ #define session_adapt_uris(a,b,c,d) do { } while(0) #endif -#if 0 #if HAVE_WDDX #define WDDX_SERIALIZER #include "ext/wddx/php_wddx_api.h" -#endif #endif #endif

« previous php.version4 (#4515) next »