18 lines
591 B
Diff
18 lines
591 B
Diff
--- src/thread/Thread.cxx 2018-02-03 20:15:41.896969703 +0100
|
|
+++ src/thread/Thread.cxx 2018-02-03 20:17:12.640990964 +0100
|
|
@@ -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
|