patch 8.1.0526: running out of signal stack in RealWaitForChar
Problem: Running out of signal stack in RealWaitForChar. (Vladimir Marek)
Solution: Make the fd_set variables static.
diff --git a/src/os_unix.c b/src/os_unix.c
index 94e1a53..4d902d9 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -6194,7 +6194,9 @@
struct timeval tv;
struct timeval *tvp;
- fd_set rfds, wfds, efds;
+ // These are static because they can take 8 Kbyte each and cause the
+ // signal stack to run out with -O3.
+ static fd_set rfds, wfds, efds;
int maxfd;
long towait = msec;
diff --git a/src/version.c b/src/version.c
index 252d047..d3a427a 100644
--- a/src/version.c
+++ b/src/version.c
@@ -793,6 +793,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 526,
+/**/
525,
/**/
524,