Skip to content

Commit 36a4ff7

Browse files
Update pcre from 8.39 to 8.44 (#2246)
1 parent 8cd25d0 commit 36a4ff7

19 files changed

+333
-13647
lines changed

Shared/mods/deathmatch/logic/luadefs/CLuaUtilDefs.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -527,7 +527,7 @@ int CLuaUtilDefs::PregReplace(lua_State* luaVM)
527527
{
528528
pcrecpp::RE pPattern(strPattern, pOptions);
529529

530-
string strNew = strBase;
530+
std::string strNew = strBase;
531531
if (pPattern.GlobalReplace(strReplace, &strNew))
532532
{
533533
lua_pushstring(luaVM, strNew.c_str());
@@ -562,7 +562,7 @@ int CLuaUtilDefs::PregMatch(lua_State* luaVM)
562562

563563
pcrecpp::StringPiece strInput(strBase);
564564

565-
string strGet;
565+
std::string strGet;
566566
int i = 1;
567567
while (pPattern.FindAndConsume(&strInput, &strGet) && i <= iMaxResults)
568568
{

vendor/pcre/config.h

Lines changed: 40 additions & 319 deletions
Original file line numberDiff line numberDiff line change
@@ -1,336 +1,57 @@
1-
/* config.h. Generated from config.h.in by configure. */
2-
/* config.h.in. Generated from configure.ac by autoheader. */
1+
/* config.h for CMake builds */
32

4-
5-
/* On Unix-like systems config.h.in is converted by "configure" into config.h.
6-
Some other environments also support the use of "configure". PCRE is written in
7-
Standard C, but there are a few non-standard things it can cope with, allowing
8-
it to run on SunOS4 and other "close to standard" systems.
9-
10-
If you are going to build PCRE "by hand" on a system without "configure" you
11-
should copy the distributed config.h.generic to config.h, and then set up the
12-
macro definitions the way you need them. You must then add -DHAVE_CONFIG_H to
13-
all of your compile commands, so that config.h is included at the start of
14-
every source.
15-
16-
Alternatively, you can avoid editing by using -D on the compiler command line
17-
to set the macro values. In this case, you do not have to set -DHAVE_CONFIG_H.
18-
19-
PCRE uses memmove() if HAVE_MEMMOVE is set to 1; otherwise it uses bcopy() if
20-
HAVE_BCOPY is set to 1. If your system has neither bcopy() nor memmove(), set
21-
them both to 0; an emulation function will be used. */
22-
23-
/* By default, the \R escape sequence matches any Unicode line ending
24-
character or sequence of characters. If BSR_ANYCRLF is defined, this is
25-
changed so that backslash-R matches only CR, LF, or CRLF. The build- time
26-
default can be overridden by the user of PCRE at runtime. On systems that
27-
support it, "configure" can be used to override the default. */
28-
/* #undef BSR_ANYCRLF */
29-
30-
/* If you are compiling for a system that uses EBCDIC instead of ASCII
31-
character codes, define this macro as 1. On systems that can use
32-
"configure", this can be done via --enable-ebcdic. PCRE will then assume
33-
that all input strings are in EBCDIC. If you do not define this macro, PCRE
34-
will assume input strings are ASCII or UTF-8 Unicode. It is not possible to
35-
build a version of PCRE that supports both EBCDIC and UTF-8. */
36-
/* #undef EBCDIC */
37-
38-
/* Define to 1 if you have the `bcopy' function. */
39-
#ifndef HAVE_BCOPY
40-
#define HAVE_BCOPY 1
41-
#endif
42-
43-
/* Define to 1 if you have the <bits/type_traits.h> header file. */
44-
/* #undef HAVE_BITS_TYPE_TRAITS_H */
45-
46-
/* Define to 1 if you have the <bzlib.h> header file. */
47-
#ifndef HAVE_BZLIB_H
48-
#define HAVE_BZLIB_H 1
49-
#endif
50-
51-
/* Define to 1 if you have the <dirent.h> header file. */
52-
#ifndef HAVE_DIRENT_H
53-
#undef HAVE_DIRENT_H
54-
#endif
55-
56-
/* Define to 1 if you have the <dlfcn.h> header file. */
57-
#ifndef HAVE_DLFCN_H
58-
#undef HAVE_DLFCN_H
59-
#endif
60-
61-
/* Define to 1 if you have the <inttypes.h> header file. */
62-
#ifndef HAVE_INTTYPES_H
63-
#define HAVE_INTTYPES_H 1
64-
#endif
65-
66-
/* Define to 1 if you have the <limits.h> header file. */
67-
#ifndef HAVE_LIMITS_H
68-
#undef HAVE_LIMITS_H
69-
#endif
70-
71-
/* Define to 1 if the system has the type `long long'. */
72-
#ifndef HAVE_LONG_LONG
73-
#define HAVE_LONG_LONG 1
74-
#endif
75-
76-
/* Define to 1 if you have the `memmove' function. */
77-
#ifndef HAVE_MEMMOVE
78-
#define HAVE_MEMMOVE 1
79-
#endif
80-
81-
/* Define to 1 if you have the <memory.h> header file. */
82-
#ifndef HAVE_MEMORY_H
83-
#define HAVE_MEMORY_H 1
84-
#endif
85-
86-
/* Define to 1 if you have the <readline/history.h> header file. */
87-
#ifndef HAVE_READLINE_HISTORY_H
88-
#define HAVE_READLINE_HISTORY_H 1
89-
#endif
90-
91-
/* Define to 1 if you have the <readline/readline.h> header file. */
92-
#ifndef HAVE_READLINE_READLINE_H
93-
#define HAVE_READLINE_READLINE_H 1
94-
#endif
95-
96-
/* Define to 1 if you have the <stdint.h> header file. */
97-
#ifndef HAVE_STDINT_H
98-
#define HAVE_STDINT_H 1
99-
#endif
100-
101-
/* Define to 1 if you have the <stdlib.h> header file. */
102-
#ifndef HAVE_STDLIB_H
103-
#define HAVE_STDLIB_H 1
104-
#endif
105-
106-
/* Define to 1 if you have the `strerror' function. */
107-
#ifndef HAVE_STRERROR
108-
#define HAVE_STRERROR 1
109-
#endif
110-
111-
/* Define to 1 if you have the <string> header file. */
112-
#ifndef HAVE_STRING
113-
#define HAVE_STRING 1
114-
#endif
115-
116-
/* Define to 1 if you have the <strings.h> header file. */
117-
#ifndef HAVE_STRINGS_H
118-
#define HAVE_STRINGS_H 1
119-
#endif
120-
121-
/* Define to 1 if you have the <string.h> header file. */
122-
#ifndef HAVE_STRING_H
123-
#define HAVE_STRING_H 1
124-
#endif
125-
126-
#ifdef WIN32
127-
#ifndef HAVE__STRTOI64
128-
#define HAVE__STRTOI64 1
129-
#endif
130-
#endif
131-
132-
/* Define to 1 if you have the `strtoq' function. */
133-
#ifndef HAVE_STRTOQ
134-
#undef HAVE_STRTOQ
135-
#endif
136-
137-
/* Define to 1 if you have the <sys/stat.h> header file. */
138-
#ifndef HAVE_SYS_STAT_H
3+
/* #undef HAVE_DIRENT_H */
1394
#define HAVE_SYS_STAT_H 1
140-
#endif
141-
142-
/* Define to 1 if you have the <sys/types.h> header file. */
143-
#ifndef HAVE_SYS_TYPES_H
1445
#define HAVE_SYS_TYPES_H 1
145-
#endif
146-
147-
/* Define to 1 if you have the <type_traits.h> header file. */
148-
/* #undef HAVE_TYPE_TRAITS_H */
149-
150-
/* Define to 1 if you have the <unistd.h> header file. */
151-
#ifndef HAVE_UNISTD_H
152-
#undef HAVE_UNISTD_H
153-
#endif
154-
155-
/* Define to 1 if the system has the type `unsigned long long'. */
156-
#ifndef HAVE_UNSIGNED_LONG_LONG
157-
#define HAVE_UNSIGNED_LONG_LONG 1
158-
#endif
159-
160-
/* Define to 1 if you have the <windows.h> header file. */
6+
/* #undef HAVE_UNISTD_H */
1617
/* #undef HAVE_WINDOWS_H */
8+
#define HAVE_STDINT_H 1
9+
#define HAVE_INTTYPES_H 1
16210

163-
/* Define to 1 if you have the <zlib.h> header file. */
164-
#ifndef HAVE_ZLIB_H
165-
#define HAVE_ZLIB_H 1
166-
#endif
167-
168-
/* Define to 1 if you have the `_strtoi64' function. */
169-
/* #undef HAVE__STRTOI64 */
170-
171-
/* The value of LINK_SIZE determines the number of bytes used to store links
172-
as offsets within the compiled regex. The default is 2, which allows for
173-
compiled patterns up to 64K long. This covers the vast majority of cases.
174-
However, PCRE can also be compiled to use 3 or 4 bytes instead. This allows
175-
for longer patterns in extreme cases. On systems that support it,
176-
"configure" can be used to override this default. */
177-
#ifndef LINK_SIZE
178-
#define LINK_SIZE 2
179-
#endif
180-
181-
/* The value of MATCH_LIMIT determines the default number of times the
182-
internal match() function can be called during a single execution of
183-
pcre_exec(). There is a runtime interface for setting a different limit.
184-
The limit exists in order to catch runaway regular expressions that take
185-
for ever to determine that they do not match. The default is set very large
186-
so that it does not accidentally catch legitimate cases. On systems that
187-
support it, "configure" can be used to override this default default. */
188-
#ifndef MATCH_LIMIT
189-
#define MATCH_LIMIT 10000000
190-
#endif
191-
192-
/* The above limit applies to all calls of match(), whether or not they
193-
increase the recursion depth. In some environments it is desirable to limit
194-
the depth of recursive calls of match() more strictly, in order to restrict
195-
the maximum amount of stack (or heap, if NO_RECURSE is defined) that is
196-
used. The value of MATCH_LIMIT_RECURSION applies only to recursive calls of
197-
match(). To have any useful effect, it must be less than the value of
198-
MATCH_LIMIT. The default is to use the same value as MATCH_LIMIT. There is
199-
a runtime method for setting a different limit. On systems that support it,
200-
"configure" can be used to override the default. */
201-
#ifndef MATCH_LIMIT_RECURSION
202-
#define MATCH_LIMIT_RECURSION MATCH_LIMIT
203-
#endif
204-
205-
/* This limit is parameterized just in case anybody ever wants to change it.
206-
Care must be taken if it is increased, because it guards against integer
207-
overflow caused by enormously large patterns. */
208-
#ifndef MAX_NAME_COUNT
209-
#define MAX_NAME_COUNT 10000
210-
#endif
211-
212-
/* This limit is parameterized just in case anybody ever wants to change it.
213-
Care must be taken if it is increased, because it guards against integer
214-
overflow caused by enormously large patterns. */
215-
#ifndef MAX_NAME_SIZE
216-
#define MAX_NAME_SIZE 32
217-
#endif
218-
219-
/* The value of NEWLINE determines the newline character sequence. On systems
220-
that support it, "configure" can be used to override the default, which is
221-
10. The possible values are 10 (LF), 13 (CR), 3338 (CRLF), -1 (ANY), or -2
222-
(ANYCRLF). */
223-
#ifndef NEWLINE
224-
#define NEWLINE 3338
225-
#endif
226-
227-
/* PCRE uses recursive function calls to handle backtracking while matching.
228-
This can sometimes be a problem on systems that have stacks of limited
229-
size. Define NO_RECURSE to get a version that doesn't use recursion in the
230-
match() function; instead it creates its own stack by steam using
231-
pcre_recurse_malloc() to obtain memory from the heap. For more detail, see
232-
the comments and other stuff just above the match() function. On systems
233-
that support it, "configure" can be used to set this in the Makefile (use
234-
--disable-stack-for-recursion). */
235-
/* #undef NO_RECURSE */
236-
237-
/* Name of package */
238-
#define PACKAGE "pcre"
239-
240-
/* Define to the address where bug reports for this package should be sent. */
241-
#define PACKAGE_BUGREPORT ""
242-
243-
/* Define to the full name of this package. */
244-
#define PACKAGE_NAME "PCRE"
245-
246-
/* Define to the full name and version of this package. */
247-
#define PACKAGE_STRING "PCRE 8.39"
248-
249-
/* Define to the one symbol short name of this package. */
250-
#define PACKAGE_TARNAME "pcre"
251-
252-
/* Define to the home page for this package. */
253-
#define PACKAGE_URL ""
254-
255-
/* Define to the version of this package. */
256-
#define PACKAGE_VERSION "8.39"
257-
258-
259-
/* The value of PARENS_NEST_LIMIT specifies the maximum depth of nested
260-
parentheses (of any kind) in a pattern. This limits the amount of system
261-
stack that is used while compiling a pattern. */
262-
#ifndef PARENS_NEST_LIMIT
263-
#define PARENS_NEST_LIMIT 250
264-
#endif
265-
266-
/* The value of PCREGREP_BUFSIZE determines the size of buffer used by
267-
pcregrep to hold parts of the file it is searching. This is also the
268-
minimum value. The actual amount of memory used by pcregrep is three times
269-
this number, because it allows for the buffering of "before" and "after"
270-
lines. */
271-
#ifndef PCREGREP_BUFSIZE
272-
#define PCREGREP_BUFSIZE 20480
273-
#endif
274-
11+
/* #undef HAVE_TYPE_TRAITS_H */
12+
/* #undef HAVE_BITS_TYPE_TRAITS_H */
27513

276-
/* If you are compiling for a system other than a Unix-like system or
277-
Win32, and it needs some magic to be inserted before the definition
278-
of a function that is exported by the library, define this macro to
279-
contain the relevant magic. If you do not define this macro, it
280-
defaults to "extern" for a C compiler and "extern C" for a C++
281-
compiler on non-Win32 systems. This macro apears at the start of
282-
every exported function that is part of the external API. It does
283-
not appear on functions that are "external" in the C sense, but
284-
which are internal to the library. */
285-
/* #undef PCRE_EXP_DEFN */
14+
/* #undef HAVE_BCOPY */
15+
#define HAVE_MEMMOVE 1
16+
#define HAVE_STRERROR 1
17+
#define HAVE_STRTOLL 1
18+
/* #undef HAVE_STRTOQ */
19+
#define HAVE__STRTOI64 1
28620

287-
/* Define if linking statically (TODO: make nice with Libtool) */
28821
/* #undef PCRE_STATIC */
28922

290-
/* When calling PCRE via the POSIX interface, additional working storage is
291-
required for holding the pointers to capturing substrings because PCRE
292-
requires three integers per substring, whereas the POSIX interface provides
293-
only two. If the number of expected substrings is small, the wrapper
294-
function uses space on the stack, because this is faster than using
295-
malloc() for each call. The threshold above which the stack is no longer
296-
used is defined by POSIX_MALLOC_THRESHOLD. On systems that support it,
297-
"configure" can be used to override this default. */
298-
#ifndef POSIX_MALLOC_THRESHOLD
299-
#define POSIX_MALLOC_THRESHOLD 10
300-
#endif
23+
#define SUPPORT_PCRE8 1
24+
/* #undef SUPPORT_PCRE16 */
25+
/* #undef SUPPORT_PCRE32 */
26+
/* #undef SUPPORT_JIT */
27+
/* #undef SUPPORT_PCREGREP_JIT */
28+
#define SUPPORT_UTF 1
29+
/* #undef SUPPORT_UCP */
30+
/* #undef EBCDIC */
31+
/* #undef EBCDIC_NL25 */
32+
/* #undef BSR_ANYCRLF */
33+
/* #undef NO_RECURSE */
30134

302-
/* Define to 1 if you have the ANSI C header files. */
303-
#ifndef STDC_HEADERS
304-
#define STDC_HEADERS 1
305-
#endif
35+
#define HAVE_LONG_LONG 1
36+
#define HAVE_UNSIGNED_LONG_LONG 1
30637

307-
/* Define to allow pcregrep to be linked with libbz2, so that it is able to
308-
handle .bz2 files. */
30938
/* #undef SUPPORT_LIBBZ2 */
310-
311-
/* Define to allow pcretest to be linked with libreadline. */
312-
/* #undef SUPPORT_LIBREADLINE */
313-
314-
/* Define to allow pcregrep to be linked with libz, so that it is able to
315-
handle .gz files. */
31639
/* #undef SUPPORT_LIBZ */
40+
/* #undef SUPPORT_LIBEDIT */
41+
/* #undef SUPPORT_LIBREADLINE */
31742

318-
/* Define to enable support for Unicode properties */
319-
/* #undef SUPPORT_UCP */
320-
321-
/* Define to enable support for the UTF-8 Unicode encoding. This will work
322-
even in an EBCDIC environment, but it is incompatible with the EBCDIC
323-
macro. That is, PCRE can support *either* EBCDIC code *or* ASCII/UTF-8, but
324-
not both at once. */
325-
#define SUPPORT_UTF8
43+
/* #undef SUPPORT_VALGRIND */
44+
/* #undef SUPPORT_GCOV */
32645

327-
/* Version number of package */
328-
#ifndef VERSION
329-
#define VERSION "7.9"
330-
#endif
46+
#define NEWLINE 3338
47+
#define POSIX_MALLOC_THRESHOLD 10
48+
#define LINK_SIZE 2
49+
#define PARENS_NEST_LIMIT 250
50+
#define MATCH_LIMIT 10000000
51+
#define MATCH_LIMIT_RECURSION MATCH_LIMIT
52+
#define PCREGREP_BUFSIZE 20480
33153

332-
/* Define to empty if `const' does not conform to ANSI C. */
333-
/* #undef const */
54+
#define MAX_NAME_SIZE 32
55+
#define MAX_NAME_COUNT 10000
33456

335-
/* Define to `unsigned int' if <sys/types.h> does not define. */
336-
/* #undef size_t */
57+
/* end config.h for CMake builds */

0 commit comments

Comments
 (0)