diff options
Diffstat (limited to 'ext')
-rw-r--r-- | ext/wddx/wddx.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/ext/wddx/wddx.c b/ext/wddx/wddx.c index cfb76f005a..097c691de1 100644 --- a/ext/wddx/wddx.c +++ b/ext/wddx/wddx.c @@ -1007,6 +1007,13 @@ static void php_wddx_process_data(void *user_data, const XML_Char *s, int len) break; case ST_BOOLEAN: + if (IS_UNDEF == Z_TYPE(ent->data)) { + if (ent->varname) { + efree(ent->varname); + ent->varname = NULL; + } + break; + } if (!strcmp((char *)s, "true")) { Z_LVAL(ent->data) = 1; } else if (!strcmp((char *)s, "false")) { |