diff options
Diffstat (limited to 'devel/kdevelop/files/patch-kdev_fix_hang_3.4.1')
-rw-r--r-- | devel/kdevelop/files/patch-kdev_fix_hang_3.4.1 | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/devel/kdevelop/files/patch-kdev_fix_hang_3.4.1 b/devel/kdevelop/files/patch-kdev_fix_hang_3.4.1 new file mode 100644 index 000000000000..28821eef5360 --- /dev/null +++ b/devel/kdevelop/files/patch-kdev_fix_hang_3.4.1 @@ -0,0 +1,54 @@ +diff -u -u kdevelop-3.4.1/languages/cpp/cppsupportpart.cpp kdevelop-svn/languages/cpp/cppsupportpart.cpp +--- languages/cpp/cppsupportpart.cpp 2007-05-16 16:36:20.000000000 +0200 ++++ languages/cpp/cppsupportpart.cpp 2007-05-16 00:25:57.000000000 +0200 +@@ -3130,11 +3130,11 @@ + return QString::null; + } + +-UIBlockTester::UIBlockTesterThread::UIBlockTesterThread( UIBlockTester& parent ) : QThread(), m_parent( parent ) { ++UIBlockTester::UIBlockTesterThread::UIBlockTesterThread( UIBlockTester& parent ) : QThread(), m_parent( parent ), m_stop(false) { + } + + void UIBlockTester::UIBlockTesterThread::run() { +- while(1) { ++ while(!m_stop) { + msleep( m_parent.m_msecs / 10 ); + m_parent.m_timeMutex.lock(); + QDateTime t = QDateTime::currentDateTime(); +@@ -3146,7 +3146,11 @@ + m_parent.m_timeMutex.unlock(); + } + } +- ++ ++void UIBlockTester::UIBlockTesterThread::stop() { ++ m_stop = true; ++} ++ + UIBlockTester::UIBlockTester( uint milliseconds ) : m_thread( *this ), m_msecs( milliseconds ) { + m_timer = new QTimer( this ); + m_timer->start( milliseconds/10 ); +@@ -3155,7 +3159,7 @@ + m_thread.start(); + } + UIBlockTester::~UIBlockTester() { +- m_thread.terminate(); ++ m_thread.stop(); + m_thread.wait(); + } + +diff -u -u kdevelop-3.4.1/languages/cpp/cppsupportpart.h kdevelop-svn/languages/cpp/cppsupportpart.h +--- languages/cpp/cppsupportpart.h 2007-05-16 16:36:20.000000000 +0200 ++++ languages/cpp/cppsupportpart.h 2007-05-16 00:25:57.000000000 +0200 +@@ -43,9 +43,10 @@ + public: + UIBlockTesterThread( UIBlockTester& parent ); + void run(); +- ++ void stop(); + private: + UIBlockTester& m_parent; ++ bool m_stop; + }; + friend class UIBlockTesterThread; + public: |