summaryrefslogtreecommitdiff
path: root/ext/xml/xml.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/xml/xml.c')
-rw-r--r--ext/xml/xml.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ext/xml/xml.c b/ext/xml/xml.c
index 1adf5b3b9b..a4c903c74b 100644
--- a/ext/xml/xml.c
+++ b/ext/xml/xml.c
@@ -515,7 +515,7 @@ static void xml_set_handler(zval **handler, zval **data TSRMLS_DC)
}
/* IS_ARRAY might indicate that we're using array($obj, 'method') syntax */
- if (Z_TYPE_PP(data) != IS_ARRAY) {
+ if (Z_TYPE_PP(data) != IS_ARRAY && Z_TYPE_PP(data) != IS_OBJECT) {
convert_to_text_ex(data);
if (((Z_TYPE_PP(data)==IS_UNICODE) && (Z_USTRLEN_PP(data) == 0)) ||
((Z_TYPE_PP(data)==IS_STRING) && (Z_STRLEN_PP(data) == 0))) {