Skip to content

Commit

Permalink
Integrate the patch from expat.h 1.51; needed for some C compilers.
Browse files Browse the repository at this point in the history
Closes SF bug #680797.
  • Loading branch information
freddrake committed Feb 7, 2003
1 parent 550e4e5 commit dab8b0a
Showing 1 changed file with 24 additions and 21 deletions.
45 changes: 24 additions & 21 deletions Modules/expat/expat.h
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,26 @@ typedef unsigned char XML_Bool;
#define XML_TRUE ((XML_Bool) 1)
#define XML_FALSE ((XML_Bool) 0)

/* The XML_Status enum gives the possible return values for several
API functions. The preprocessor #defines are included so this
stanza can be added to code that still needs to support older
versions of Expat 1.95.x:
#ifndef XML_STATUS_OK
#define XML_STATUS_OK 1
#define XML_STATUS_ERROR 0
#endif
Otherwise, the #define hackery is quite ugly and would have been
dropped.
*/
enum XML_Status {
XML_STATUS_ERROR = 0,
#define XML_STATUS_ERROR XML_STATUS_ERROR
XML_STATUS_OK = 1
#define XML_STATUS_OK XML_STATUS_OK
};

enum XML_Error {
XML_ERROR_NONE,
XML_ERROR_NO_MEMORY,
Expand Down Expand Up @@ -717,28 +737,11 @@ XML_GetIdAttributeIndex(XML_Parser parser);
detected. The last call to XML_Parse must have isFinal true; len
may be zero for this call (or any other).
The XML_Status enum gives the possible return values for the
XML_Parse and XML_ParseBuffer functions. Though the return values
for these functions has always been described as a Boolean value,
the implementation, at least for the 1.95.x series, has always
returned exactly one of these values. The preprocessor #defines
are included so this stanza can be added to code that still needs
to support older versions of Expat 1.95.x:
#ifndef XML_STATUS_OK
#define XML_STATUS_OK 1
#define XML_STATUS_ERROR 0
#endif
Otherwise, the #define hackery is quite ugly and would have been dropped.
Though the return values for these functions has always been
described as a Boolean value, the implementation, at least for the
1.95.x series, has always returned exactly one of the XML_Status
values.
*/
enum XML_Status {
XML_STATUS_ERROR = 0,
#define XML_STATUS_ERROR XML_STATUS_ERROR
XML_STATUS_OK = 1
#define XML_STATUS_OK XML_STATUS_OK
};

XMLPARSEAPI(enum XML_Status)
XML_Parse(XML_Parser parser, const char *s, int len, int isFinal);

Expand Down

0 comments on commit dab8b0a

Please sign in to comment.