cpython: d54508a86a5d (original) (raw)
Mercurial > cpython
changeset 75817:d54508a86a5d 3.2
Fixes Issue 14234: fix for the previous commit, keep compilation when using --with-system-expat working when the system expat does not have salted hash support.
Gregory P. Smith greg@krypto.org | |
---|---|
date | Wed, 14 Mar 2012 18:10:37 -0700 |
parents | cf7337a49a07 |
children | 428f05cb7277 |
files | Modules/expat/expat.h Modules/pyexpat.c |
diffstat | 2 files changed, 7 insertions(+), 0 deletions(-)[+] [-] Modules/expat/expat.h 2 Modules/pyexpat.c 5 |
line wrap: on
line diff
--- a/Modules/expat/expat.h +++ b/Modules/expat/expat.h @@ -892,6 +892,8 @@ XMLPARSEAPI(int) XML_SetHashSalt(XML_Parser parser, unsigned long hash_salt); +#define XML_HAS_SET_HASH_SALT /* Python Only: Defined for pyexpat.c. / + / If XML_Parse or XML_ParseBuffer have returned XML_STATUS_ERROR, then XML_GetErrorCode returns information about the error. */
--- a/Modules/pyexpat.c +++ b/Modules/pyexpat.c @@ -1150,8 +1150,13 @@ newxmlparseobject(char *encoding, char * else { self->itself = XML_ParserCreate(encoding); } +#if ((XML_MAJOR_VERSION >= 2) && (XML_MINOR_VERSION >= 1)) || defined(XML_HAS_SET_HASH_SALT)
- /* This feature was added upstream in libexpat 2.1.0. Our expat copy
* has a backport of this feature where we also define XML_HAS_SET_HASH_SALT[](#l2.9)
XML_SetHashSalt(self->itself, (unsigned long)_Py_HashSecret.prefix);* to indicate that we can still use it. */[](#l2.10)
+#endif self->intern = intern; Py_XINCREF(self->intern); PyObject_GC_Track(self);