[Python-checkins] cpython (2.7): Fixes Issue 14234: fix for the previous commit, keep compilation when

Jim Jewett jimjjewett at gmail.com
Mon Mar 19 22:01:19 CET 2012


Does this mean that if Python is updated before expat, python will
compile out the expat randomization, and therefore not use if even
after expat is updated?

-jJ

On Thu, Mar 15, 2012 at 2:01 PM, benjamin.peterson
<python-checkins at python.org> wrote:
> http://hg.python.org/cpython/rev/ada6bfbeceb8
> changeset:   75699:ada6bfbeceb8
> branch:      2.7
> user:        Gregory P. Smith <greg at krypto.org>
> date:        Wed Mar 14 18:12:23 2012 -0700
> summary:
>  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.
>
> files:
>  Modules/expat/expat.h |  2 ++
>  Modules/pyexpat.c     |  5 +++++
>  2 files changed, 7 insertions(+), 0 deletions(-)
>
>
> diff --git a/Modules/expat/expat.h b/Modules/expat/expat.h
> --- a/Modules/expat/expat.h
> +++ b/Modules/expat/expat.h
> @@ -892,6 +892,8 @@
>  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.
>  */
> diff --git a/Modules/pyexpat.c b/Modules/pyexpat.c
> --- a/Modules/pyexpat.c
> +++ b/Modules/pyexpat.c
> @@ -1302,8 +1302,13 @@
>     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
> +     * to indicate that we can still use it. */
>     XML_SetHashSalt(self->itself,
>                     (unsigned long)_Py_HashSecret.prefix);
> +#endif
>     self->intern = intern;
>     Py_XINCREF(self->intern);
>  #ifdef Py_TPFLAGS_HAVE_GC
>
> --
> Repository URL: http://hg.python.org/cpython
>
> _______________________________________________
> Python-checkins mailing list
> Python-checkins at python.org
> http://mail.python.org/mailman/listinfo/python-checkins
>


More information about the Python-checkins mailing list