summaryrefslogtreecommitdiff
path: root/ext/wddx/wddx.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/wddx/wddx.c')
-rw-r--r--ext/wddx/wddx.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/ext/wddx/wddx.c b/ext/wddx/wddx.c
index da3424695b..311d6aa4a5 100644
--- a/ext/wddx/wddx.c
+++ b/ext/wddx/wddx.c
@@ -1096,6 +1096,9 @@ static void php_wddx_process_data(void *user_data, const XML_Char *s, int len)
break;
case ST_BOOLEAN:
+ if(!ent->data) {
+ break;
+ }
if (!strcmp(s, "true")) {
Z_LVAL_P(ent->data) = 1;
} else if (!strcmp(s, "false")) {
@@ -1104,6 +1107,7 @@ static void php_wddx_process_data(void *user_data, const XML_Char *s, int len)
zval_ptr_dtor(&ent->data);
if (ent->varname) {
efree(ent->varname);
+ ent->varname = NULL;
}
ent->data = NULL;
}