tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
0
fork
atom
lol
0
fork
atom
overview
issues
pulls
pipelines
pcre: add patch fixing stack frame size detection
Robin Gloster
8 years ago
462076c9
b96bf4a8
+19
2 changed files
expand all
collapse all
unified
split
pkgs
development
libraries
pcre
default.nix
stacksize-detection.patch
+3
pkgs/development/libraries/pcre/default.nix
reviewed
···
33
33
34
34
buildInputs = optional (hostPlatform.libc == "msvcrt") windows.mingw_w64_pthreads;
35
35
36
36
+
# https://bugs.exim.org/show_bug.cgi?id=2173
37
37
+
patches = [ ./stacksize-detection.patch ];
38
38
+
36
39
doCheck = !(with hostPlatform; isCygwin || isFreeBSD) && hostPlatform == buildPlatform;
37
40
# XXX: test failure on Cygwin
38
41
# we are running out of stack on both freeBSDs on Hydra
+16
pkgs/development/libraries/pcre/stacksize-detection.patch
reviewed
···
1
1
+
diff --git a/pcre_exec.c b/pcre_exec.c
2
2
+
--- a/pcre_exec.c
3
3
+
+++ b/pcre_exec.c
4
4
+
@@ -509,6 +509,12 @@
5
5
+
(e.g. stopped by repeated call or recursion limit)
6
6
+
*/
7
7
+
8
8
+
+#ifdef __GNUC__
9
9
+
+static int
10
10
+
+match(REGISTER PCRE_PUCHAR eptr, REGISTER const pcre_uchar *ecode,
11
11
+
+ PCRE_PUCHAR mstart, int offset_top, match_data *md, eptrblock *eptrb,
12
12
+
+ unsigned int rdepth) __attribute__((noinline,noclone));
13
13
+
+#endif
14
14
+
static int
15
15
+
match(REGISTER PCRE_PUCHAR eptr, REGISTER const pcre_uchar *ecode,
16
16
+
PCRE_PUCHAR mstart, int offset_top, match_data *md, eptrblock *eptrb,