wez             Fri Dec 19 11:57:37 2003 EDT

  Modified files:              
    /php-src/ext/xml    compat.c expat_compat.h 
  Log:
  Export expat compat functions.
  "Implement" XML_GetCurrentByteCount(); probably not 100%
  correct, but the only usage of it is by xmlrpc extension when
  reporting an error; it should be safe.
  
Index: php-src/ext/xml/compat.c
diff -u php-src/ext/xml/compat.c:1.23 php-src/ext/xml/compat.c:1.24
--- php-src/ext/xml/compat.c:1.23       Fri Dec  5 05:53:59 2003
+++ php-src/ext/xml/compat.c    Fri Dec 19 11:57:36 2003
@@ -377,13 +377,13 @@
        1
 };
 
-XML_Parser 
+PHPAPI XML_Parser 
 XML_ParserCreate(const XML_Char *encoding)
 {
        return XML_ParserCreate_MM(encoding, NULL, NULL);
 }
 
-XML_Parser
+PHPAPI XML_Parser
 XML_ParserCreateNS(const XML_Char *encoding, const XML_Char sep)
 {
        XML_Char tmp[2];
@@ -392,7 +392,7 @@
        return XML_ParserCreate_MM(encoding, NULL, tmp);
 }
 
-XML_Parser
+PHPAPI XML_Parser
 XML_ParserCreate_MM(const XML_Char *encoding, const XML_Memory_Handling_Suite 
*memsuite, const XML_Char *sep)
 {
        XML_Parser parser;
@@ -422,86 +422,86 @@
        return parser;
 }
 
-void
+PHPAPI void
 XML_SetUserData(XML_Parser parser, void *user)
 {
        parser->user = user;
 }
 
-void *
+PHPAPI void *
 XML_GetUserData(XML_Parser parser)
 {
        return parser->user;
 }
 
-void
+PHPAPI void
 XML_SetElementHandler(XML_Parser parser, XML_StartElementHandler start, 
XML_EndElementHandler end)
 {
        parser->h_start_element = start;
        parser->h_end_element = end;
 }
 
-void
+PHPAPI void
 XML_SetCharacterDataHandler(XML_Parser parser, XML_CharacterDataHandler cdata)
 {
        parser->h_cdata = cdata;
 }
 
-void
+PHPAPI void
 XML_SetProcessingInstructionHandler(XML_Parser parser, 
XML_ProcessingInstructionHandler pi)
 {
        parser->h_pi = pi;
 }
 
-void
+PHPAPI void
 XML_SetCommentHandler(XML_Parser parser, XML_CommentHandler comment)
 {
        parser->h_comment = comment;
 }
 
-void 
+PHPAPI void 
 XML_SetDefaultHandler(XML_Parser parser, XML_DefaultHandler d)
 {
        parser->h_default = d;
 }
 
-void
+PHPAPI void
 XML_SetUnparsedEntityDeclHandler(XML_Parser parser, XML_UnparsedEntityDeclHandler 
unparsed_decl)
 {
        parser->h_unparsed_entity_decl = unparsed_decl;
 }
 
-void
+PHPAPI void
 XML_SetNotationDeclHandler(XML_Parser parser, XML_NotationDeclHandler notation_decl)
 {
        parser->h_notation_decl = notation_decl;
 }
 
-void
+PHPAPI void
 XML_SetExternalEntityRefHandler(XML_Parser parser, XML_ExternalEntityRefHandler 
ext_entity)
 {
        parser->h_external_entity_ref = ext_entity;
 }
 
-void
+PHPAPI void
 XML_SetStartNamespaceDeclHandler(XML_Parser parser, XML_StartNamespaceDeclHandler 
start_ns)
 {
        parser->h_start_ns = start_ns;
 }
 
-void
+PHPAPI void
 XML_SetEndNamespaceDeclHandler(XML_Parser parser, XML_EndNamespaceDeclHandler end_ns)
 {
        parser->h_end_ns = end_ns;
 }
 
-int
+PHPAPI int
 XML_Parse(XML_Parser parser, const XML_Char *data, int data_len, int is_final)
 {
        return !xmlParseChunk(parser->parser, data, data_len, is_final);
 }
 
-int
+PHPAPI int
 XML_GetErrorCode(XML_Parser parser)
 {
        return parser->parser->errNo;
@@ -606,7 +606,7 @@
     "XML_ERR_NO_DTD"
 };
 
-const XML_Char *
+PHPAPI const XML_Char *
 XML_ErrorString(int code)
 {
        if (code < 0 || code >= (int)sizeof(error_mapping)) {
@@ -615,26 +615,35 @@
        return error_mapping[code];
 }
 
-int
+PHPAPI int
 XML_GetCurrentLineNumber(XML_Parser parser)
 {
        return parser->parser->input->line;
 }
 
-int
+PHPAPI int
 XML_GetCurrentColumnNumber(XML_Parser parser)
 {
        return parser->parser->input->col;
 }
 
-int
+PHPAPI int
 XML_GetCurrentByteIndex(XML_Parser parser)
 {
        return parser->parser->input->consumed +
                        (parser->parser->input->cur - parser->parser->input->base);
 }
 
-const XML_Char *XML_ExpatVersion(void)
+PHPAPI int
+XML_GetCurrentByteCount(XML_Parser parser)
+{
+       /* WARNING: this is identical to ByteIndex; it should probably
+        * be different */
+       return parser->parser->input->consumed +
+                       (parser->parser->input->cur - parser->parser->input->base);
+}
+
+PHPAPI const XML_Char *XML_ExpatVersion(void)
 {
        return "1.0";
 }
@@ -662,7 +671,7 @@
        efree(ptr);
 }
 
-void
+PHPAPI void
 XML_ParserFree(XML_Parser parser)
 {
        if (parser->use_namespace) {
Index: php-src/ext/xml/expat_compat.h
diff -u php-src/ext/xml/expat_compat.h:1.13 php-src/ext/xml/expat_compat.h:1.14
--- php-src/ext/xml/expat_compat.h:1.13 Mon Sep 29 07:35:39 2003
+++ php-src/ext/xml/expat_compat.h      Fri Dec 19 11:57:36 2003
@@ -16,7 +16,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: expat_compat.h,v 1.13 2003/09/29 11:35:39 rrichards Exp $ */
+/* $Id: expat_compat.h,v 1.14 2003/12/19 16:57:36 wez Exp $ */
 
 #ifndef PHP_EXPAT_COMPAT_H
 #define PHP_EXPAT_COMPAT_H
@@ -113,28 +113,29 @@
        XML_CTYPE_SEQ
 };
 
-XML_Parser XML_ParserCreate(const XML_Char *);
-XML_Parser XML_ParserCreateNS(const XML_Char *, const XML_Char);
-XML_Parser XML_ParserCreate_MM(const XML_Char *, const XML_Memory_Handling_Suite *, 
const XML_Char *);
-void XML_SetUserData(XML_Parser, void *);
-void *XML_GetUserData(XML_Parser);
-void XML_SetElementHandler(XML_Parser, XML_StartElementHandler, 
XML_EndElementHandler);
-void XML_SetCharacterDataHandler(XML_Parser, XML_CharacterDataHandler);
-void XML_SetProcessingInstructionHandler(XML_Parser, 
XML_ProcessingInstructionHandler);
-void XML_SetDefaultHandler(XML_Parser, XML_DefaultHandler);
-void XML_SetUnparsedEntityDeclHandler(XML_Parser, XML_UnparsedEntityDeclHandler);
-void XML_SetNotationDeclHandler(XML_Parser, XML_NotationDeclHandler);
-void XML_SetExternalEntityRefHandler(XML_Parser, XML_ExternalEntityRefHandler);
-void XML_SetStartNamespaceDeclHandler(XML_Parser, XML_StartNamespaceDeclHandler);
-void XML_SetEndNamespaceDeclHandler(XML_Parser, XML_EndNamespaceDeclHandler);
-int  XML_Parse(XML_Parser, const XML_Char *, int data_len, int is_final);
-int  XML_GetErrorCode(XML_Parser);
-const XML_Char *XML_ErrorString(int);
-int  XML_GetCurrentLineNumber(XML_Parser);
-int  XML_GetCurrentColumnNumber(XML_Parser);
-int  XML_GetCurrentByteIndex(XML_Parser);
-const XML_Char *XML_ExpatVersion(void);
-void XML_ParserFree(XML_Parser);
+PHPAPI XML_Parser XML_ParserCreate(const XML_Char *);
+PHPAPI XML_Parser XML_ParserCreateNS(const XML_Char *, const XML_Char);
+PHPAPI XML_Parser XML_ParserCreate_MM(const XML_Char *, const 
XML_Memory_Handling_Suite *, const XML_Char *);
+PHPAPI void XML_SetUserData(XML_Parser, void *);
+PHPAPI void *XML_GetUserData(XML_Parser);
+PHPAPI void XML_SetElementHandler(XML_Parser, XML_StartElementHandler, 
XML_EndElementHandler);
+PHPAPI void XML_SetCharacterDataHandler(XML_Parser, XML_CharacterDataHandler);
+PHPAPI void XML_SetProcessingInstructionHandler(XML_Parser, 
XML_ProcessingInstructionHandler);
+PHPAPI void XML_SetDefaultHandler(XML_Parser, XML_DefaultHandler);
+PHPAPI void XML_SetUnparsedEntityDeclHandler(XML_Parser, 
XML_UnparsedEntityDeclHandler);
+PHPAPI void XML_SetNotationDeclHandler(XML_Parser, XML_NotationDeclHandler);
+PHPAPI void XML_SetExternalEntityRefHandler(XML_Parser, XML_ExternalEntityRefHandler);
+PHPAPI void XML_SetStartNamespaceDeclHandler(XML_Parser, 
XML_StartNamespaceDeclHandler);
+PHPAPI void XML_SetEndNamespaceDeclHandler(XML_Parser, XML_EndNamespaceDeclHandler);
+PHPAPI int  XML_Parse(XML_Parser, const XML_Char *, int data_len, int is_final);
+PHPAPI int  XML_GetErrorCode(XML_Parser);
+PHPAPI const XML_Char *XML_ErrorString(int);
+PHPAPI int  XML_GetCurrentLineNumber(XML_Parser);
+PHPAPI int  XML_GetCurrentColumnNumber(XML_Parser);
+PHPAPI int  XML_GetCurrentByteIndex(XML_Parser);
+PHPAPI int  XML_GetCurrentByteCount(XML_Parser);
+PHPAPI const XML_Char *XML_ExpatVersion(void);
+PHPAPI void XML_ParserFree(XML_Parser);
 
 #elif defined(HAVE_LIBEXPAT)
 #include <expat.h>

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to