summaryrefslogtreecommitdiff
path: root/mpd/stacksize.patch
diff options
context:
space:
mode:
Diffstat (limited to 'mpd/stacksize.patch')
-rw-r--r--mpd/stacksize.patch17
1 files changed, 17 insertions, 0 deletions
diff --git a/mpd/stacksize.patch b/mpd/stacksize.patch
new file mode 100644
index 0000000..291a2f2
--- /dev/null
+++ b/mpd/stacksize.patch
@@ -0,0 +1,17 @@
+--- ./src/thread/Thread.cxx.orig
++++ ./src/thread/Thread.cxx
+@@ -35,8 +35,12 @@
+ if (handle == nullptr)
+ throw MakeLastError("Failed to create thread");
+ #else
+- int e = pthread_create(&handle, nullptr, ThreadProc, this);
+-
++ pthread_attr_t attr, *attrptr = nullptr;
++ if ((pthread_attr_init(&attr) == 0)
++ && (pthread_attr_setstacksize(&attr, 1024*1024) == 0)) {
++ attrptr = &attr;
++ }
++ int e = pthread_create(&handle, attrptr, ThreadProc, this);
+ if (e != 0)
+ throw MakeErrno(e, "Failed to create thread");
+ #endif