CVS update: php3/functions
| From: | shane | Date: | Fri, 23 Oct 1998 20:46:59 +0000 |
| Subject: | CVS update: php3/functions | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-1993@lists.php.net to get a copy of this message | ||
Date: Friday October 23, 1998 @ 16:46
Author: shane
Update of /repository/php3/functions
In directory asf:/u2/tmp/cvs-serv13790/functions
Modified Files:
oracle_hack.c xml.c
Log Message:
xml compiles on win32 now as a dll
Index: php3/functions/oracle_hack.c
diff -c php3/functions/oracle_hack.c:1.1 php3/functions/oracle_hack.c:1.2
*** php3/functions/oracle_hack.c:1.1 Mon Oct 5 10:46:49 1998
--- php3/functions/oracle_hack.c Fri Oct 23 16:46:58 1998
***************
*** 13,16 ****
--- 13,24 ----
PHPAPI HashTable *php3i_get_symbol_table(void) {
TLS_VARS;
return &GLOBAL(symbol_table);
+ }
+
+ /* This is becoming a general callback file, rather than an oracle hack
+ * file. Seems we need the following now for xml. */
+
+ PHPAPI HashTable *php3i_get_function_table(void) {
+ TLS_VARS;
+ return &GLOBAL(function_table);
}
Index: php3/functions/xml.c
diff -c php3/functions/xml.c:1.7 php3/functions/xml.c:1.8
*** php3/functions/xml.c:1.7 Fri Oct 23 16:07:16 1998
--- php3/functions/xml.c Fri Oct 23 16:46:58 1998
***************
*** 27,44 ****
+----------------------------------------------------------------------+
*/
! /* $Id: xml.c,v 1.7 1998/10/23 20:07:16 shane Exp $ */
#define IS_EXT_MODULE
#if COMPILE_DL
# if PHP_31
- # include "dl/phpdl.h"
- # else
# include "../phpdl.h
# endif
#endif
#include "php.h"
#include "internal_functions.h"
#include "php3_xml.h"
#if defined(THREAD_SAFE) && !PHP_31
#undef THREAD_SAFE
--- 27,45 ----
+----------------------------------------------------------------------+
*/
! /* $Id: xml.c,v 1.8 1998/10/23 20:46:58 shane Exp $ */
#define IS_EXT_MODULE
#if COMPILE_DL
# if PHP_31
# include "../phpdl.h
+ # else
+ # include "dl/phpdl.h"
# endif
#endif
#include "php.h"
#include "internal_functions.h"
#include "php3_xml.h"
+ #include "functions/php3_mod_callbacks.h"
#if defined(THREAD_SAFE) && !PHP_31
#undef THREAD_SAFE
***************
*** 47,53 ****
#if HAVE_LIBEXPAT
# include "php3_list.h"
! # include "build-defs.h"
# include "snprintf.h"
# include "head.h"
# include "php3_string.h"
--- 48,56 ----
#if HAVE_LIBEXPAT
# include "php3_list.h"
! # if !(WIN32|WINNT)
! # include "build-defs.h"
! # endif
# include "snprintf.h"
# include "head.h"
# include "php3_string.h"
***************
*** 352,369 ****
if (parser && funcName) {
pval *retval, *func;
int i;
func = php3i_stringpval(funcName);
retval = emalloc(sizeof(pval));
! if (call_user_function(&GLOBAL(function_table), NULL, func, retval, argc, argv) == FAILURE)
{
! pval_destructor(retval);
efree(retval);
return NULL;
}
! pval_destructor(func);
efree(func);
for (i = 0; i < argc; i++) {
! pval_destructor(argv[i]);
efree(argv[i]);
}
return retval;
--- 355,377 ----
if (parser && funcName) {
pval *retval, *func;
int i;
+ HashTable *function_table;
func = php3i_stringpval(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) {
! php3tls_pval_destructor(retval);
efree(retval);
return NULL;
}
! php3tls_pval_destructor(func);
efree(func);
for (i = 0; i < argc; i++) {
! php3tls_pval_destructor(argv[i]);
efree(argv[i]);
}
return retval;
***************
*** 493,499 ****
attributes += 2;
}
if ((retval = xml_call_handler(parser, parser->startElementHandler, 3, args))) {
! pval_destructor(retval);
efree(retval);
}
if (parser->case_folding) {
--- 501,507 ----
attributes += 2;
}
if ((retval = xml_call_handler(parser, parser->startElementHandler, 3, args))) {
! php3tls_pval_destructor(retval);
efree(retval);
}
if (parser->case_folding) {
***************
*** 519,525 ****
args[0] = php3i_longpval(parser->index);
args[1] = php3i_stringpval(name);
if ((retval = xml_call_handler(parser, parser->endElementHandler, 2, args))) {
! pval_destructor(retval);
efree(retval);
}
if (parser->case_folding) {
--- 527,533 ----
args[0] = php3i_longpval(parser->index);
args[1] = php3i_stringpval(name);
if ((retval = xml_call_handler(parser, parser->endElementHandler, 2, args))) {
! php3tls_pval_destructor(retval);
efree(retval);
}
if (parser->case_folding) {
***************
*** 542,548 ****
args[0] = php3i_longpval(parser->index);
args[1] = php3i_xmlcharpval(s, len);
if ((retval = xml_call_handler(parser, parser->characterDataHandler, 2, args))) {
! pval_destructor(retval);
efree(retval);
}
}
--- 550,556 ----
args[0] = php3i_longpval(parser->index);
args[1] = php3i_xmlcharpval(s, len);
if ((retval = xml_call_handler(parser, parser->characterDataHandler, 2, args))) {
! php3tls_pval_destructor(retval);
efree(retval);
}
}
***************
*** 565,571 ****
args[1] = php3i_xmlcharpval(target, 0);
args[2] = php3i_xmlcharpval(data, 0);
if ((retval = xml_call_handler(parser, parser->processingInstructionHandler, 3, args))) {
! pval_destructor(retval);
efree(retval);
}
}
--- 573,579 ----
args[1] = php3i_xmlcharpval(target, 0);
args[2] = php3i_xmlcharpval(data, 0);
if ((retval = xml_call_handler(parser, parser->processingInstructionHandler, 3, args))) {
! php3tls_pval_destructor(retval);
efree(retval);
}
}
***************
*** 585,591 ****
args[0] = php3i_longpval(parser->index);
args[1] = php3i_xmlcharpval(s, len);
if ((retval = xml_call_handler(parser, parser->defaultHandler, 2, args))) {
! pval_destructor(retval);
efree(retval);
}
}
--- 593,599 ----
args[0] = php3i_longpval(parser->index);
args[1] = php3i_xmlcharpval(s, len);
if ((retval = xml_call_handler(parser, parser->defaultHandler, 2, args))) {
! php3tls_pval_destructor(retval);
efree(retval);
}
}
***************
*** 614,620 ****
args[4] = php3i_xmlcharpval(publicId, 0);
args[5] = php3i_xmlcharpval(notationName, 0);
if ((retval = xml_call_handler(parser, parser->unparsedEntityDeclHandler, 6, args))) {
! pval_destructor(retval);
efree(retval);
}
}
--- 622,628 ----
args[4] = php3i_xmlcharpval(publicId, 0);
args[5] = php3i_xmlcharpval(notationName, 0);
if ((retval = xml_call_handler(parser, parser->unparsedEntityDeclHandler, 6, args))) {
! php3tls_pval_destructor(retval);
efree(retval);
}
}
***************
*** 642,648 ****
args[3] = php3i_xmlcharpval(systemId, 0);
args[4] = php3i_xmlcharpval(publicId, 0);
if ((retval = xml_call_handler(parser, parser->notationDeclHandler, 5, args))) {
! pval_destructor(retval);
efree(retval);
}
}
--- 650,656 ----
args[3] = php3i_xmlcharpval(systemId, 0);
args[4] = php3i_xmlcharpval(publicId, 0);
if ((retval = xml_call_handler(parser, parser->notationDeclHandler, 5, args))) {
! php3tls_pval_destructor(retval);
efree(retval);
}
}
--
PHP Development Mailing List http://www.php.net/
To unsubscribe send an empty message to php-dev-unsubscribe@lists.php.net
For help: php-dev-help@lists.php.net