mirror of https://github.com/python/cpython
gh-97005: Update libexpat from 2.4.7 to 2.4.9 (gh-97006)
Co-authored-by: Gregory P. Smith [Google] <greg@krypto.org>
This commit is contained in:
parent
b4f5f07d07
commit
10e3d398c3
|
@ -0,0 +1 @@
|
||||||
|
Update bundled libexpat to 2.4.9
|
|
@ -1,5 +1,5 @@
|
||||||
Copyright (c) 1998-2000 Thai Open Source Software Center Ltd and Clark Cooper
|
Copyright (c) 1998-2000 Thai Open Source Software Center Ltd and Clark Cooper
|
||||||
Copyright (c) 2001-2019 Expat maintainers
|
Copyright (c) 2001-2022 Expat maintainers
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
a copy of this software and associated documentation files (the
|
a copy of this software and associated documentation files (the
|
||||||
|
|
|
@ -1055,7 +1055,7 @@ XML_SetBillionLaughsAttackProtectionActivationThreshold(
|
||||||
*/
|
*/
|
||||||
#define XML_MAJOR_VERSION 2
|
#define XML_MAJOR_VERSION 2
|
||||||
#define XML_MINOR_VERSION 4
|
#define XML_MINOR_VERSION 4
|
||||||
#define XML_MICRO_VERSION 7
|
#define XML_MICRO_VERSION 9
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
Copyright (c) 2002-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
Copyright (c) 2002-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
|
||||||
Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net>
|
Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net>
|
||||||
Copyright (c) 2003 Greg Stein <gstein@users.sourceforge.net>
|
Copyright (c) 2003 Greg Stein <gstein@users.sourceforge.net>
|
||||||
Copyright (c) 2016-2021 Sebastian Pipping <sebastian@pipping.org>
|
Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
|
||||||
Copyright (c) 2018 Yury Gribov <tetra2005@gmail.com>
|
Copyright (c) 2018 Yury Gribov <tetra2005@gmail.com>
|
||||||
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
@ -107,7 +107,9 @@
|
||||||
|
|
||||||
#include <limits.h> // ULONG_MAX
|
#include <limits.h> // ULONG_MAX
|
||||||
|
|
||||||
#if defined(_WIN32) && ! defined(__USE_MINGW_ANSI_STDIO)
|
#if defined(_WIN32) \
|
||||||
|
&& (! defined(__USE_MINGW_ANSI_STDIO) \
|
||||||
|
|| (1 - __USE_MINGW_ANSI_STDIO - 1 == 0))
|
||||||
# define EXPAT_FMT_ULL(midpart) "%" midpart "I64u"
|
# define EXPAT_FMT_ULL(midpart) "%" midpart "I64u"
|
||||||
# if defined(_WIN64) // Note: modifiers "td" and "zu" do not work for MinGW
|
# if defined(_WIN64) // Note: modifiers "td" and "zu" do not work for MinGW
|
||||||
# define EXPAT_FMT_PTRDIFF_T(midpart) "%" midpart "I64d"
|
# define EXPAT_FMT_PTRDIFF_T(midpart) "%" midpart "I64d"
|
||||||
|
|
|
@ -106,7 +106,7 @@
|
||||||
* if this code is included and compiled as C++; related GCC warning is:
|
* if this code is included and compiled as C++; related GCC warning is:
|
||||||
* warning: use of C++11 long long integer constant [-Wlong-long]
|
* warning: use of C++11 long long integer constant [-Wlong-long]
|
||||||
*/
|
*/
|
||||||
#define _SIP_ULL(high, low) (((uint64_t)high << 32) | low)
|
#define _SIP_ULL(high, low) ((((uint64_t)high) << 32) | (low))
|
||||||
|
|
||||||
#define SIP_ROTL(x, b) (uint64_t)(((x) << (b)) | ((x) >> (64 - (b))))
|
#define SIP_ROTL(x, b) (uint64_t)(((x) << (b)) | ((x) >> (64 - (b))))
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* fcb1a62fefa945567301146eb98e3ad3413e823a41c4378e84e8b6b6f308d824 (2.4.7+)
|
/* 90815a2b2c80c03b2b889fe1d427bb2b9e3282aa065e42784e001db4f23de324 (2.4.9+)
|
||||||
__ __ _
|
__ __ _
|
||||||
___\ \/ /_ __ __ _| |_
|
___\ \/ /_ __ __ _| |_
|
||||||
/ _ \\ /| '_ \ / _` | __|
|
/ _ \\ /| '_ \ / _` | __|
|
||||||
|
@ -19,7 +19,7 @@
|
||||||
Copyright (c) 2016 Gustavo Grieco <gustavo.grieco@imag.fr>
|
Copyright (c) 2016 Gustavo Grieco <gustavo.grieco@imag.fr>
|
||||||
Copyright (c) 2016 Pascal Cuoq <cuoq@trust-in-soft.com>
|
Copyright (c) 2016 Pascal Cuoq <cuoq@trust-in-soft.com>
|
||||||
Copyright (c) 2016 Ed Schouten <ed@nuxi.nl>
|
Copyright (c) 2016 Ed Schouten <ed@nuxi.nl>
|
||||||
Copyright (c) 2017-2018 Rhodri James <rhodri@wildebeest.org.uk>
|
Copyright (c) 2017-2022 Rhodri James <rhodri@wildebeest.org.uk>
|
||||||
Copyright (c) 2017 Václav Slavík <vaclav@slavik.io>
|
Copyright (c) 2017 Václav Slavík <vaclav@slavik.io>
|
||||||
Copyright (c) 2017 Viktor Szakats <commit@vsz.me>
|
Copyright (c) 2017 Viktor Szakats <commit@vsz.me>
|
||||||
Copyright (c) 2017 Chanho Park <chanho61.park@samsung.com>
|
Copyright (c) 2017 Chanho Park <chanho61.park@samsung.com>
|
||||||
|
@ -4271,7 +4271,7 @@ processXmlDecl(XML_Parser parser, int isGeneralTextEntity, const char *s,
|
||||||
const XML_Char *storedEncName = NULL;
|
const XML_Char *storedEncName = NULL;
|
||||||
const ENCODING *newEncoding = NULL;
|
const ENCODING *newEncoding = NULL;
|
||||||
const char *version = NULL;
|
const char *version = NULL;
|
||||||
const char *versionend;
|
const char *versionend = NULL;
|
||||||
const XML_Char *storedversion = NULL;
|
const XML_Char *storedversion = NULL;
|
||||||
int standalone = -1;
|
int standalone = -1;
|
||||||
|
|
||||||
|
@ -5826,10 +5826,15 @@ internalEntityProcessor(XML_Parser parser, const char *s, const char *end,
|
||||||
{
|
{
|
||||||
parser->m_processor = contentProcessor;
|
parser->m_processor = contentProcessor;
|
||||||
/* see externalEntityContentProcessor vs contentProcessor */
|
/* see externalEntityContentProcessor vs contentProcessor */
|
||||||
return doContent(parser, parser->m_parentParser ? 1 : 0, parser->m_encoding,
|
result = doContent(parser, parser->m_parentParser ? 1 : 0,
|
||||||
s, end, nextPtr,
|
parser->m_encoding, s, end, nextPtr,
|
||||||
(XML_Bool)! parser->m_parsingStatus.finalBuffer,
|
(XML_Bool)! parser->m_parsingStatus.finalBuffer,
|
||||||
XML_ACCOUNT_DIRECT);
|
XML_ACCOUNT_DIRECT);
|
||||||
|
if (result == XML_ERROR_NONE) {
|
||||||
|
if (! storeRawNames(parser))
|
||||||
|
return XML_ERROR_NO_MEMORY;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
Copyright (c) 2017 José Gutiérrez de la Concha <jose@zeroc.com>
|
Copyright (c) 2017 José Gutiérrez de la Concha <jose@zeroc.com>
|
||||||
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
Copyright (c) 2021 Dong-hee Na <donghee.na@python.org>
|
Copyright (c) 2021 Dong-hee Na <donghee.na@python.org>
|
||||||
|
Copyright (c) 2022 Martin Ettl <ettl.martin78@googlemail.com>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
@ -296,7 +297,7 @@ sb_charMatches(const ENCODING *enc, const char *p, int c) {
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
/* c is an ASCII character */
|
/* c is an ASCII character */
|
||||||
# define CHAR_MATCHES(enc, p, c) (*(p) == c)
|
# define CHAR_MATCHES(enc, p, c) (*(p) == (c))
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define PREFIX(ident) normal_##ident
|
#define PREFIX(ident) normal_##ident
|
||||||
|
@ -740,7 +741,7 @@ DEFINE_UTF16_TO_UTF16(big2_)
|
||||||
((p)[1] == 0 ? ((struct normal_encoding *)(enc))->type[(unsigned char)*(p)] \
|
((p)[1] == 0 ? ((struct normal_encoding *)(enc))->type[(unsigned char)*(p)] \
|
||||||
: unicode_byte_type((p)[1], (p)[0]))
|
: unicode_byte_type((p)[1], (p)[0]))
|
||||||
#define LITTLE2_BYTE_TO_ASCII(p) ((p)[1] == 0 ? (p)[0] : -1)
|
#define LITTLE2_BYTE_TO_ASCII(p) ((p)[1] == 0 ? (p)[0] : -1)
|
||||||
#define LITTLE2_CHAR_MATCHES(p, c) ((p)[1] == 0 && (p)[0] == c)
|
#define LITTLE2_CHAR_MATCHES(p, c) ((p)[1] == 0 && (p)[0] == (c))
|
||||||
#define LITTLE2_IS_NAME_CHAR_MINBPC(p) \
|
#define LITTLE2_IS_NAME_CHAR_MINBPC(p) \
|
||||||
UCS2_GET_NAMING(namePages, (unsigned char)p[1], (unsigned char)p[0])
|
UCS2_GET_NAMING(namePages, (unsigned char)p[1], (unsigned char)p[0])
|
||||||
#define LITTLE2_IS_NMSTRT_CHAR_MINBPC(p) \
|
#define LITTLE2_IS_NMSTRT_CHAR_MINBPC(p) \
|
||||||
|
@ -875,7 +876,7 @@ static const struct normal_encoding internal_little2_encoding
|
||||||
? ((struct normal_encoding *)(enc))->type[(unsigned char)(p)[1]] \
|
? ((struct normal_encoding *)(enc))->type[(unsigned char)(p)[1]] \
|
||||||
: unicode_byte_type((p)[0], (p)[1]))
|
: unicode_byte_type((p)[0], (p)[1]))
|
||||||
#define BIG2_BYTE_TO_ASCII(p) ((p)[0] == 0 ? (p)[1] : -1)
|
#define BIG2_BYTE_TO_ASCII(p) ((p)[0] == 0 ? (p)[1] : -1)
|
||||||
#define BIG2_CHAR_MATCHES(p, c) ((p)[0] == 0 && (p)[1] == c)
|
#define BIG2_CHAR_MATCHES(p, c) ((p)[0] == 0 && (p)[1] == (c))
|
||||||
#define BIG2_IS_NAME_CHAR_MINBPC(p) \
|
#define BIG2_IS_NAME_CHAR_MINBPC(p) \
|
||||||
UCS2_GET_NAMING(namePages, (unsigned char)p[0], (unsigned char)p[1])
|
UCS2_GET_NAMING(namePages, (unsigned char)p[0], (unsigned char)p[1])
|
||||||
#define BIG2_IS_NMSTRT_CHAR_MINBPC(p) \
|
#define BIG2_IS_NMSTRT_CHAR_MINBPC(p) \
|
||||||
|
|
|
@ -16,6 +16,7 @@
|
||||||
Copyright (c) 2018 Anton Maklakov <antmak.pub@gmail.com>
|
Copyright (c) 2018 Anton Maklakov <antmak.pub@gmail.com>
|
||||||
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
|
||||||
Copyright (c) 2020 Boris Kolpackov <boris@codesynthesis.com>
|
Copyright (c) 2020 Boris Kolpackov <boris@codesynthesis.com>
|
||||||
|
Copyright (c) 2022 Martin Ettl <ettl.martin78@googlemail.com>
|
||||||
Licensed under the MIT license:
|
Licensed under the MIT license:
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
@ -96,7 +97,7 @@
|
||||||
|
|
||||||
# define CHECK_NMSTRT_CASE(n, enc, ptr, end, nextTokPtr) \
|
# define CHECK_NMSTRT_CASE(n, enc, ptr, end, nextTokPtr) \
|
||||||
case BT_LEAD##n: \
|
case BT_LEAD##n: \
|
||||||
if (end - ptr < n) \
|
if ((end) - (ptr) < (n)) \
|
||||||
return XML_TOK_PARTIAL_CHAR; \
|
return XML_TOK_PARTIAL_CHAR; \
|
||||||
if (IS_INVALID_CHAR(enc, ptr, n) || ! IS_NMSTRT_CHAR(enc, ptr, n)) { \
|
if (IS_INVALID_CHAR(enc, ptr, n) || ! IS_NMSTRT_CHAR(enc, ptr, n)) { \
|
||||||
*nextTokPtr = ptr; \
|
*nextTokPtr = ptr; \
|
||||||
|
@ -124,7 +125,8 @@
|
||||||
# define PREFIX(ident) ident
|
# define PREFIX(ident) ident
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
# define HAS_CHARS(enc, ptr, end, count) (end - ptr >= count * MINBPC(enc))
|
# define HAS_CHARS(enc, ptr, end, count) \
|
||||||
|
((end) - (ptr) >= ((count)*MINBPC(enc)))
|
||||||
|
|
||||||
# define HAS_CHAR(enc, ptr, end) HAS_CHARS(enc, ptr, end, 1)
|
# define HAS_CHAR(enc, ptr, end) HAS_CHARS(enc, ptr, end, 1)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue