summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel
diff options
context:
space:
mode:
authorRitt Konstantin <qnx@ics.com>2011-06-21 11:51:05 (GMT)
committerHarald Fernengel <harald.fernengel@nokia.com>2011-06-21 12:05:39 (GMT)
commit09cd27db5e9f35834edccbc56f938fe340daa14f (patch)
tree452d92ecdcee9fff1fbeb5f4f675f85e592df8e7 /src/corelib/kernel
parent648bf773b1aa759a40d8609039c44f9dce31da61 (diff)
downloadQt-09cd27db5e9f35834edccbc56f938fe340daa14f.zip
Qt-09cd27db5e9f35834edccbc56f938fe340daa14f.tar.gz
Qt-09cd27db5e9f35834edccbc56f938fe340daa14f.tar.bz2
make the kernel attempt to emulate an instruction with a misaligned access
since Qt was not tested with a misaligned access checking turned on, there are some issues in the QtGui module which leads to a crash with the SIGBUS signal. disable the misaligned access checking for now... Merge-request: 1259 Reviewed-by: Harald Fernengel <harald.fernengel@nokia.com>
Diffstat (limited to 'src/corelib/kernel')
-rw-r--r--src/corelib/kernel/qcoreapplication.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp
index c818ffc..dd46bc5 100644
--- a/src/corelib/kernel/qcoreapplication.cpp
+++ b/src/corelib/kernel/qcoreapplication.cpp
@@ -99,6 +99,7 @@
#endif
#ifdef Q_OS_QNX
+# include <sys/neutrino.h>
# include <pthread.h>
# include <sched.h>
#endif
@@ -359,6 +360,11 @@ QCoreApplicationPrivate::QCoreApplicationPrivate(int &aargc, char **aargv, uint
#endif
#ifdef Q_OS_QNX
+ // make the kernel attempt to emulate an instruction with a misaligned access
+ // if the attempt fails, it faults with a SIGBUS
+ int tv = -1;
+ ThreadCtl(_NTO_TCTL_ALIGN_FAULT, &tv);
+
// without Round Robin drawn intensive apps will hog the cpu
// and make the system appear frozen
int sched_policy;