summaryrefslogtreecommitdiffstats
path: root/src/corelib/thread
diff options
context:
space:
mode:
authorThierry Bastian <thierry.bastian@nokia.com>2011-04-19 15:47:23 +0200
committerOlivier Goffart <olivier.goffart@nokia.com>2011-05-10 12:54:48 +0200
commit1712e20a5ad7ead5981ce56b28121a9513b06dd2 (patch)
tree6e62a00c96d1af95e5114f5e40144215024074e4 /src/corelib/thread
parent3e787c470de8ea37f9f2b244bf3bbbb86ac65acd (diff)
Fixed a crash on Windows XP with mingw in threaded-code
The thread callback doesn't align the stack on 16-bytes on WinXP. That causes a crash when we call SSE code. So now we tell the compiler to force that alignment of the stack. Task: QTBUG-18631 Reviewed-By: Olivier (cherry picked from commit 364ce5b7f5379499562b4f4f5a68da7ba068fe1e)
Diffstat (limited to 'src/corelib/thread')
-rw-r--r--src/corelib/thread/qthread_win.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/corelib/thread/qthread_win.cpp b/src/corelib/thread/qthread_win.cpp
index bab6cf85de..bdade1d24e 100644
--- a/src/corelib/thread/qthread_win.cpp
+++ b/src/corelib/thread/qthread_win.cpp
@@ -300,7 +300,7 @@ void QThreadPrivate::createEventDispatcher(QThreadData *data)
#ifndef QT_NO_THREAD
-unsigned int __stdcall QThreadPrivate::start(void *arg)
+unsigned int __stdcall QT_ENSURE_STACK_ALIGNED_FOR_SSE QThreadPrivate::start(void *arg)
{
QThread *thr = reinterpret_cast<QThread *>(arg);
QThreadData *data = QThreadData::get2(thr);