-rw-r--r-- | qt/qte234-for-opie091-sigsegv.patch | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/qt/qte234-for-opie091-sigsegv.patch b/qt/qte234-for-opie091-sigsegv.patch index b04accf..858030f 100644 --- a/qt/qte234-for-opie091-sigsegv.patch +++ b/qt/qte234-for-opie091-sigsegv.patch | |||
@@ -1,26 +1,27 @@ | |||
1 | --- qt-2.3.4/src/kernel/qwindowsystem_qws.cpp~sigsegv2003-03-18 18:29:00.000000000 -0600 | 1 | --- qt-2.3.4/src/kernel/qwindowsystem_qws.cpp~sigsegv2003-03-18 18:29:00.000000000 -0600 |
2 | +++ qt-2.3.4/src/kernel/qwindowsystem_qws.cpp2003-03-18 19:09:08.000000000 -0600 | 2 | +++ qt-2.3.4/src/kernel/qwindowsystem_qws.cpp2003-03-18 19:09:08.000000000 -0600 |
3 | @@ -843,6 +843,15 @@ | 3 | @@ -843,6 +843,16 @@ |
4 | { | 4 | { |
5 | } | 5 | } |
6 | 6 | ||
7 | +static void catchSegvSignal( int ) | 7 | +static void catchSegvSignal( int ) |
8 | +{ | 8 | +{ |
9 | +#ifndef QT_NO_QWS_KEYBOARD | 9 | +#ifndef QT_NO_QWS_KEYBOARD |
10 | + if ( qwsServer ) | 10 | + if ( qwsServer ) |
11 | +qwsServer->closeKeyboard(); | 11 | +qwsServer->closeKeyboard(); |
12 | +#endif | 12 | +#endif |
13 | + QWSServer::closedown(); | ||
13 | +} | 14 | +} |
14 | + | 15 | + |
15 | + | 16 | + |
16 | /*! | 17 | /*! |
17 | \class QWSServer qwindowsystem_qws.h | 18 | \class QWSServer qwindowsystem_qws.h |
18 | \brief Server-specific functionality in Qt/Embedded | 19 | \brief Server-specific functionality in Qt/Embedded |
19 | @@ -912,6 +921,7 @@ | 20 | @@ -912,6 +922,7 @@ |
20 | } | 21 | } |
21 | 22 | ||
22 | signal(SIGPIPE, ignoreSignal); //we get it when we read | 23 | signal(SIGPIPE, ignoreSignal); //we get it when we read |
23 | + signal(SIGSEGV, catchSegvSignal); //recover the keyboard on crash | 24 | + signal(SIGSEGV, catchSegvSignal); //recover the keyboard on crash |
24 | #endif | 25 | #endif |
25 | focusw = 0; | 26 | focusw = 0; |
26 | mouseGrabber = 0; | 27 | mouseGrabber = 0; |