diff options
Diffstat (limited to 'ext/xml/xml.c')
| -rw-r--r-- | ext/xml/xml.c | 25 | 
1 files changed, 9 insertions, 16 deletions
| diff --git a/ext/xml/xml.c b/ext/xml/xml.c index 7279b04f73..8b26f5fe12 100644 --- a/ext/xml/xml.c +++ b/ext/xml/xml.c @@ -57,11 +57,7 @@   * - Weird things happen with <![CDATA[]]> sections.   */ -#ifdef ZTS -int xml_globals_id; -#else -PHP_XML_API php_xml_globals xml_globals; -#endif +ZEND_DECLARE_MODULE_GLOBALS(xml)  /* {{{ dynamically loadable module stuff */  #ifdef COMPILE_DL_XML @@ -75,6 +71,7 @@ ZEND_GET_MODULE(xml)  /* {{{ function prototypes */  PHP_MINIT_FUNCTION(xml);  PHP_MINFO_FUNCTION(xml); +static PHP_GINIT_FUNCTION(xml);  static void xml_parser_dtor(zend_rsrc_list_entry *rsrc TSRMLS_DC);  static void xml_set_handler(zval **, zval **); @@ -161,7 +158,11 @@ zend_module_entry xml_module_entry = {  	NULL,                 /* per-request shutdown function */  	PHP_MINFO(xml),       /* information function */      NO_VERSION_YET, -	STANDARD_MODULE_PROPERTIES +    PHP_MODULE_GLOBALS(xml), /* globals descriptor */ +    PHP_GINIT(xml),          /* globals ctor */ +    NULL,                    /* globals dtor */ +    NULL,                    /* post deactivate */ +	STANDARD_MODULE_PROPERTIES_EX  };  /* All the encoding functions are set to NULL right now, since all @@ -182,12 +183,10 @@ static int le_xml_parser;  /* }}} */  /* {{{ startup, shutdown and info functions */ -#ifdef ZTS -static void php_xml_init_globals(php_xml_globals *xml_globals_p TSRMLS_DC) +static PHP_GINIT_FUNCTION(xml)  { -	XML(default_encoding) = "UTF-8"; +	xml_globals->default_encoding = "UTF-8";  } -#endif  static void *php_xml_malloc_wrapper(size_t sz)  { @@ -210,12 +209,6 @@ PHP_MINIT_FUNCTION(xml)  {  	le_xml_parser =	zend_register_list_destructors_ex(xml_parser_dtor, NULL, "xml", module_number); -#ifdef ZTS -	ts_allocate_id(&xml_globals_id, sizeof(php_xml_globals), (ts_allocate_ctor) php_xml_init_globals, NULL); -#else -	XML(default_encoding) = "UTF-8"; -#endif -  	REGISTER_LONG_CONSTANT("XML_ERROR_NONE", XML_ERROR_NONE, CONST_CS|CONST_PERSISTENT);  	REGISTER_LONG_CONSTANT("XML_ERROR_NO_MEMORY", XML_ERROR_NO_MEMORY, CONST_CS|CONST_PERSISTENT);  	REGISTER_LONG_CONSTANT("XML_ERROR_SYNTAX", XML_ERROR_SYNTAX, CONST_CS|CONST_PERSISTENT); | 
