diff --git a/ext/libxml/php_libxml.h b/ext/libxml/php_libxml.h index badbd6bec8d..84e1f15445d 100644 --- a/ext/libxml/php_libxml.h +++ b/ext/libxml/php_libxml.h @@ -102,6 +102,16 @@ PHP_LIBXML_API void php_libxml_issue_error(int level, const char *msg TSRMLS_DC) PHP_LIBXML_API void php_libxml_initialize(); PHP_LIBXML_API void php_libxml_shutdown(); +#define ZVAL_XML_STRING(z, s, flags) { \ + UConverter *libxml_utf_conv = NULL; \ + if (UG(unicode)) { \ + libxml_utf_conv = UG(utf8_conv); \ + } \ + ZVAL_U_STRING(libxml_utf_conv, z, s, flags); \ +} + +#define RETVAL_XML_STRING(s, flags) ZVAL_XML_STRING(return_value, s, flags) + #ifdef ZTS #define LIBXML(v) TSRMG(libxml_globals_id, zend_libxml_globals *, v) #else