diff options
author | Sascha Schumann <sas@php.net> | 1999-05-27 01:34:18 +0000 |
---|---|---|
committer | Sascha Schumann <sas@php.net> | 1999-05-27 01:34:18 +0000 |
commit | 5d0a7599a9076fc345e61b90dfe855479d348ff1 (patch) | |
tree | c4d9ccd0936f12599b10906ce5c802b51559b9af /ext/xml/xml.c | |
parent | 16ec4608ac0db22f97a6fd8019895d923850bb88 (diff) | |
download | php-git-5d0a7599a9076fc345e61b90dfe855479d348ff1.tar.gz |
- fix CGI build (at least)
Diffstat (limited to 'ext/xml/xml.c')
-rw-r--r-- | ext/xml/xml.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/ext/xml/xml.c b/ext/xml/xml.c index be4fe3b110..29d5d96fa7 100644 --- a/ext/xml/xml.c +++ b/ext/xml/xml.c @@ -363,7 +363,8 @@ xml_set_handler(char **nameBufp, pval *data) if (*nameBufp != NULL) { efree(*nameBufp); } - *nameBufp = php3i_pval_strdup(data); + convert_to_string(data); + *nameBufp = estrndup(data->value.str.val, data->value.str.len); } else { if (*nameBufp != NULL) { efree(*nameBufp); @@ -378,18 +379,18 @@ xml_set_handler(char **nameBufp, pval *data) static pval * xml_call_handler(xml_parser *parser, char *funcName, int argc, pval **argv) { + ELS_FETCH(); + if (parser && funcName) { pval *retval, *func; int i; - HashTable *function_table; func = php3i_string_pval(funcName); retval = emalloc(sizeof(pval)); /* We cannot call internal variables from a function module as it breaks any chance of compiling it as a module on windows. Instead, we create a callback function. */ - function_table=php3i_get_function_table(); - if (call_user_function(function_table, NULL, func, retval, argc, argv) == FAILURE) { + if (call_user_function(EG(function_table), NULL, func, retval, argc, argv) == FAILURE) { php3tls_pval_destructor(retval); efree(retval); return NULL; |