summaryrefslogtreecommitdiff
path: root/ext/soap/php_encoding.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2005-11-01 11:11:35 +0000
committerDmitry Stogov <dmitry@php.net>2005-11-01 11:11:35 +0000
commite98a40f1fa055abefe1b9075cf35775605bbcd5c (patch)
treeec163980ae2b731ca65efd9865b28bf4521b1d7b /ext/soap/php_encoding.c
parent02eb02d1ce937975f5510fbc4832448c38278ca3 (diff)
downloadphp-git-e98a40f1fa055abefe1b9075cf35775605bbcd5c.tar.gz
Fixed SIGSEGV
Diffstat (limited to 'ext/soap/php_encoding.c')
-rw-r--r--ext/soap/php_encoding.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c
index c0494b8f98..bca17d4a59 100644
--- a/ext/soap/php_encoding.c
+++ b/ext/soap/php_encoding.c
@@ -2760,15 +2760,16 @@ static xmlNodePtr to_xml_any(encodeTypePtr type, zval *data, int style, xmlNodeP
if (Z_TYPE_P(data) == IS_STRING) {
ret = xmlNewTextLen(Z_STRVAL_P(data), Z_STRLEN_P(data));
+ ret->name = xmlStringTextNoenc;
} else {
zval tmp = *data;
zval_copy_ctor(&tmp);
convert_to_string(&tmp);
- ret = xmlNewTextLen(Z_STRVAL_P(data), Z_STRLEN_P(data));
+ ret = xmlNewTextLen(Z_STRVAL(tmp), Z_STRLEN(tmp));
zval_dtor(&tmp);
+ ret->name = xmlStringTextNoenc;
}
- ret->name = xmlStringTextNoenc;
xmlAddChild(parent, ret);
return ret;