]> granicus.if.org Git - php/commitdiff
Fixed segfault in _xml_xmlchar_zval
authorXinchen Hui <laruence@php.net>
Mon, 5 May 2014 11:52:42 +0000 (19:52 +0800)
committerXinchen Hui <laruence@php.net>
Mon, 5 May 2014 11:52:42 +0000 (19:52 +0800)
ext/xml/xml.c

index 169be95981a2aa3558eda6b36f5aa2d1e0c46221..bbb1223f8b9d4f7c383396c669baa0645f3214dd 100644 (file)
@@ -378,6 +378,7 @@ static void _xml_xmlchar_zval(const XML_Char *s, int len, const XML_Char *encodi
 {
        if (s == NULL) {
                ZVAL_FALSE(ret);
+               return;
        }
        if (len == 0) {
                len = _xml_xmlcharlen(s);
@@ -1195,7 +1196,7 @@ PHP_FUNCTION(xml_set_object)
        zval_add_ref(&parser->object); 
 #endif */
 
-       ZVAL_COPY(&parser->object, mythis);
+       ZVAL_DUP_DEREF(&parser->object, mythis);
 
        RETVAL_TRUE;
 }