Bug 203428 - Pressing Ctrl-S at the CMake dialog when creating class crashes KDevelop
Summary: Pressing Ctrl-S at the CMake dialog when creating class crashes KDevelop
Status: RESOLVED FIXED
Alias: None
Product: kdevelop
Classification: Applications
Component: Build tools: CMake (show other bugs)
Version: unspecified
Platform: Unlisted Binaries Linux
: HI crash
Target Milestone: 4.0.0
Assignee: kdevelop-bugs-null
URL:
Keywords:
: 207531 217503 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-08-11 14:37 UTC by Esben Mose Hansen
Modified: 2009-12-07 03:07 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Esben Mose Hansen 2009-08-11 14:37:36 UTC
Application that crashed: kdevelop
Version of the application: 3.9.94 (using KDevPlatform 0.9.94)
KDE Version: 4.3.00 (KDE 4.3.0)
Qt Version: 4.5.2
Operating System: Linux 2.6.30-1-686 i686
Distribution: Debian GNU/Linux unstable (sid)

What I was doing when the application crashed:
To reproduce:
1. create a new class with class wizard and the CMake build system
2. when you get the dialog where you can edit the CMake file, press Ctrl-S
3. press ok on the dialog -> crash.

Workaround: Don't press ctrl-s there.


 -- Backtrace:
Application: KDevelop (kdevelop), signal: Segmentation fault
[Current thread is 1 (Thread 0xb51a7710 (LWP 3999))]

Thread 10 (Thread 0xb170fb90 (LWP 4001)):
#0  0xb80a7424 in __kernel_vsyscall ()
#1  0xb5662292 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb62838b4 in pthread_cond_timedwait () from /lib/i686/cmov/libc.so.6
#3  0xb6e994dc in QWaitConditionPrivate::wait (this=0x88d6cf4, mutex=0x88d6cf8, time=200000) at thread/qwaitcondition_unix.cpp:85
#4  QWaitCondition::wait (this=0x88d6cf4, mutex=0x88d6cf8, time=200000) at thread/qwaitcondition_unix.cpp:159
#5  0xb5d26ed5 in KDevelop::DUChainPrivate::CleanupThread::run (this=0x88d6ce8) at /home/esben/kde/src/kdevplatform/language/duchain/duchain.cpp:280
#6  0xb6e98522 in QThreadPrivate::start (arg=0x88d6ce8) at thread/qthread_unix.cpp:188
#7  0xb565e4b5 in start_thread () from /lib/i686/cmov/libpthread.so.0
#8  0xb6274a5e in clone () from /lib/i686/cmov/libc.so.6

Thread 9 (Thread 0xae06fb90 (LWP 4124)):
#0  0xb6fb480c in QEventDispatcherGlib::processEvents (this=0x8f27058, flags=...) at kernel/qeventdispatcher_glib.cpp:329
#1  0xb6f87fba in QEventLoop::processEvents (this=0xae06f300, flags=...) at kernel/qeventloop.cpp:149
#2  0xb6f88402 in QEventLoop::exec (this=0xae06f300, flags=...) at kernel/qeventloop.cpp:201
#3  0xb6e95289 in QThread::exec (this=0x8d0e180) at thread/qthread.cpp:487
#4  0xb5e15b45 in KDevelop::CompletionWorkerThread::run (this=0x8d0e180) at /home/esben/kde/src/kdevplatform/language/codecompletion/codecompletionmodel.cpp:79
#5  0xb6e98522 in QThreadPrivate::start (arg=0x8d0e180) at thread/qthread_unix.cpp:188
#6  0xb565e4b5 in start_thread () from /lib/i686/cmov/libpthread.so.0
#7  0xb6274a5e in clone () from /lib/i686/cmov/libc.so.6

Thread 8 (Thread 0xad86eb90 (LWP 4125)):
#0  0xb5618fec in clock_gettime () from /lib/i686/cmov/librt.so.1
#1  0xb6fb64bb in QTimerInfoList::getTime (this=0x91fd614, t=...) at kernel/qeventdispatcher_unix.cpp:339
#2  0xb6fb6681 in QTimerInfoList::updateCurrentTime (this=0x91fd614) at kernel/qeventdispatcher_unix.cpp:297
#3  0xb6fb83bc in QTimerInfoList::timerWait (this=0x91fd614, tm=...) at kernel/qeventdispatcher_unix.cpp:420
#4  0xb6fb49da in timerSourcePrepare (source=0xb561cff4, timeout=0xad86e198) at kernel/qeventdispatcher_glib.cpp:141
#5  0xb559c1e0 in g_main_context_prepare () from /usr/lib/libglib-2.0.so.0
#6  0xb559c5a4 in ?? () from /usr/lib/libglib-2.0.so.0
#7  0xb559ca48 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#8  0xb6fb4817 in QEventDispatcherGlib::processEvents (this=0x91fd1b8, flags=...) at kernel/qeventdispatcher_glib.cpp:329
#9  0xb6f87fba in QEventLoop::processEvents (this=0xad86e300, flags=...) at kernel/qeventloop.cpp:149
#10 0xb6f88402 in QEventLoop::exec (this=0xad86e300, flags=...) at kernel/qeventloop.cpp:201
#11 0xb6e95289 in QThread::exec (this=0x91f7158) at thread/qthread.cpp:487
#12 0xb5e15b45 in KDevelop::CompletionWorkerThread::run (this=0x91f7158) at /home/esben/kde/src/kdevplatform/language/codecompletion/codecompletionmodel.cpp:79
#13 0xb6e98522 in QThreadPrivate::start (arg=0x91f7158) at thread/qthread_unix.cpp:188
#14 0xb565e4b5 in start_thread () from /lib/i686/cmov/libpthread.so.0
#15 0xb6274a5e in clone () from /lib/i686/cmov/libc.so.6

Thread 7 (Thread 0xab2deb90 (LWP 4130)):
#0  0xb80a7424 in __kernel_vsyscall ()
#1  0xb5662292 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb62838b4 in pthread_cond_timedwait () from /lib/i686/cmov/libc.so.6
#3  0xb6e97f2e in thread_sleep (ti=0xab2de2f0) at thread/qthread_unix.cpp:297
#4  0xb6e9805b in QThread::msleep (msecs=<value optimized out>) at thread/qthread_unix.cpp:323
#5  0xabe79986 in UIBlockTester::UIBlockTesterThread::run (this=0x926d298) at /home/esben/kde/src/kdevelop/languages/cpp/cpplanguagesupport.cpp:965
#6  0xb6e98522 in QThreadPrivate::start (arg=0x926d298) at thread/qthread_unix.cpp:188
#7  0xb565e4b5 in start_thread () from /lib/i686/cmov/libpthread.so.0
#8  0xb6274a5e in clone () from /lib/i686/cmov/libc.so.6

Thread 6 (Thread 0xa9f4ab90 (LWP 4133)):
#0  0xb80a7424 in __kernel_vsyscall ()
#1  0xb5661f65 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb628385d in pthread_cond_wait () from /lib/i686/cmov/libc.so.6
#3  0xb6e99502 in QWaitConditionPrivate::wait (this=0x887e420, mutex=0x887dda0, time=4294967295) at thread/qwaitcondition_unix.cpp:87
#4  QWaitCondition::wait (this=0x887e420, mutex=0x887dda0, time=4294967295) at thread/qwaitcondition_unix.cpp:159
#5  0xb7a04648 in ?? () from /usr/lib/libthreadweaver.so.4
#6  0xb7a073ac in ?? () from /usr/lib/libthreadweaver.so.4
#7  0xb7a0323b in ?? () from /usr/lib/libthreadweaver.so.4
#8  0xb7a074a2 in ?? () from /usr/lib/libthreadweaver.so.4
#9  0xb7a04bd3 in ?? () from /usr/lib/libthreadweaver.so.4
#10 0xb7a054be in ?? () from /usr/lib/libthreadweaver.so.4
#11 0xb7a05afb in ThreadWeaver::Thread::run() () from /usr/lib/libthreadweaver.so.4
#12 0xb6e98522 in QThreadPrivate::start (arg=0x93142b8) at thread/qthread_unix.cpp:188
#13 0xb565e4b5 in start_thread () from /lib/i686/cmov/libpthread.so.0
#14 0xb6274a5e in clone () from /lib/i686/cmov/libc.so.6

Thread 5 (Thread 0xa9749b90 (LWP 4134)):
#0  0xb80a7424 in __kernel_vsyscall ()
#1  0xb5661f65 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb628385d in pthread_cond_wait () from /lib/i686/cmov/libc.so.6
#3  0xb6e99502 in QWaitConditionPrivate::wait (this=0x887e420, mutex=0x887dda0, time=4294967295) at thread/qwaitcondition_unix.cpp:87
#4  QWaitCondition::wait (this=0x887e420, mutex=0x887dda0, time=4294967295) at thread/qwaitcondition_unix.cpp:159
#5  0xb7a04648 in ?? () from /usr/lib/libthreadweaver.so.4
#6  0xb7a073ac in ?? () from /usr/lib/libthreadweaver.so.4
#7  0xb7a0323b in ?? () from /usr/lib/libthreadweaver.so.4
#8  0xb7a074a2 in ?? () from /usr/lib/libthreadweaver.so.4
#9  0xb7a04bd3 in ?? () from /usr/lib/libthreadweaver.so.4
#10 0xb7a054be in ?? () from /usr/lib/libthreadweaver.so.4
#11 0xb7a05afb in ThreadWeaver::Thread::run() () from /usr/lib/libthreadweaver.so.4
#12 0xb6e98522 in QThreadPrivate::start (arg=0x9427200) at thread/qthread_unix.cpp:188
#13 0xb565e4b5 in start_thread () from /lib/i686/cmov/libpthread.so.0
#14 0xb6274a5e in clone () from /lib/i686/cmov/libc.so.6

Thread 4 (Thread 0xa8f48b90 (LWP 4135)):
#0  0xb80a7424 in __kernel_vsyscall ()
#1  0xb5661f65 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb628385d in pthread_cond_wait () from /lib/i686/cmov/libc.so.6
#3  0xb6e99502 in QWaitConditionPrivate::wait (this=0x887e420, mutex=0x887dda0, time=4294967295) at thread/qwaitcondition_unix.cpp:87
#4  QWaitCondition::wait (this=0x887e420, mutex=0x887dda0, time=4294967295) at thread/qwaitcondition_unix.cpp:159
#5  0xb7a04648 in ?? () from /usr/lib/libthreadweaver.so.4
#6  0xb7a073ac in ?? () from /usr/lib/libthreadweaver.so.4
#7  0xb7a0323b in ?? () from /usr/lib/libthreadweaver.so.4
#8  0xb7a074a2 in ?? () from /usr/lib/libthreadweaver.so.4
#9  0xb7a04bd3 in ?? () from /usr/lib/libthreadweaver.so.4
#10 0xb7a054be in ?? () from /usr/lib/libthreadweaver.so.4
#11 0xb7a05afb in ThreadWeaver::Thread::run() () from /usr/lib/libthreadweaver.so.4
#12 0xb6e98522 in QThreadPrivate::start (arg=0x9656ef8) at thread/qthread_unix.cpp:188
#13 0xb565e4b5 in start_thread () from /lib/i686/cmov/libpthread.so.0
#14 0xb6274a5e in clone () from /lib/i686/cmov/libc.so.6

Thread 3 (Thread 0xb04cbb90 (LWP 7294)):
#0  0xb80a7424 in __kernel_vsyscall ()
#1  0xb5661f65 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb628385d in pthread_cond_wait () from /lib/i686/cmov/libc.so.6
#3  0xb6e99502 in QWaitConditionPrivate::wait (this=0xa696c150, mutex=0xa6c429e8, time=4294967295) at thread/qwaitcondition_unix.cpp:87
#4  QWaitCondition::wait (this=0xa696c150, mutex=0xa6c429e8, time=4294967295) at thread/qwaitcondition_unix.cpp:159
#5  0xb7a04648 in ?? () from /usr/lib/libthreadweaver.so.4
#6  0xb7a073ac in ?? () from /usr/lib/libthreadweaver.so.4
#7  0xb7a0323b in ?? () from /usr/lib/libthreadweaver.so.4
#8  0xb7a074a2 in ?? () from /usr/lib/libthreadweaver.so.4
#9  0xb7a04bd3 in ?? () from /usr/lib/libthreadweaver.so.4
#10 0xb7a054be in ?? () from /usr/lib/libthreadweaver.so.4
#11 0xb7a05afb in ThreadWeaver::Thread::run() () from /usr/lib/libthreadweaver.so.4
#12 0xb6e98522 in QThreadPrivate::start (arg=0xa834c080) at thread/qthread_unix.cpp:188
#13 0xb565e4b5 in start_thread () from /lib/i686/cmov/libpthread.so.0
#14 0xb6274a5e in clone () from /lib/i686/cmov/libc.so.6

Thread 2 (Thread 0xa66ffb90 (LWP 7296)):
#0  0xb80a7424 in __kernel_vsyscall ()
#1  0xb5661f65 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i686/cmov/libpthread.so.0
#2  0xb628385d in pthread_cond_wait () from /lib/i686/cmov/libc.so.6
#3  0xb6e99502 in QWaitConditionPrivate::wait (this=0xa696c150, mutex=0xa6c429e8, time=4294967295) at thread/qwaitcondition_unix.cpp:87
#4  QWaitCondition::wait (this=0xa696c150, mutex=0xa6c429e8, time=4294967295) at thread/qwaitcondition_unix.cpp:159
#5  0xb7a04648 in ?? () from /usr/lib/libthreadweaver.so.4
#6  0xb7a073ac in ?? () from /usr/lib/libthreadweaver.so.4
#7  0xb7a0323b in ?? () from /usr/lib/libthreadweaver.so.4
#8  0xb7a074a2 in ?? () from /usr/lib/libthreadweaver.so.4
#9  0xb7a04bd3 in ?? () from /usr/lib/libthreadweaver.so.4
#10 0xb7a054be in ?? () from /usr/lib/libthreadweaver.so.4
#11 0xb7a05afb in ThreadWeaver::Thread::run() () from /usr/lib/libthreadweaver.so.4
#12 0xb6e98522 in QThreadPrivate::start (arg=0xa6cde0b8) at thread/qthread_unix.cpp:188
#13 0xb565e4b5 in start_thread () from /lib/i686/cmov/libpthread.so.0
#14 0xb6274a5e in clone () from /lib/i686/cmov/libc.so.6

Thread 1 (Thread 0xb51a7710 (LWP 3999)):
[KCrash Handler]
#6  QUrl::scheme (this=0x5) at io/qurl.cpp:4182
#7  0xb7f1fb7c in KUrl::hasSubUrl() const () from /usr/lib/libkdecore.so.5
#8  0xb7f20cde in KUrl::fileName(QFlags<KUrl::DirectoryOption> const&) const () from /usr/lib/libkdecore.so.5
#9  0xb0d5c96c in CMakeManager::addFileToTarget (this=0xb0e09f38, it=0xa7c21238, target=0xabdc4ee8) at /home/esben/kde/src/kdevelop/projectmanagers/cmake/cmakemanager.cpp:1056
#10 0xabee2557 in SimpleRefactoring::createNewClass (this=0xabeffa98, item=0x8f451c8) at /home/esben/kde/src/kdevelop/languages/cpp/codegen/simplerefactoring.cpp:247
#11 0xabee2754 in SimpleRefactoring::executeNewClassAction (this=0xabeffa98) at /home/esben/kde/src/kdevelop/languages/cpp/codegen/simplerefactoring.cpp:164
#12 0xabe78fe3 in SimpleRefactoring::qt_metacall (this=0xabeffa98, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0xbf8bd05c) at /home/esben/kde/build/kdevelop/languages/cpp/moc_simplerefactoring.cpp:71
#13 0xb6f9ead3 in QMetaObject::activate (sender=0xaae3038, from_signal_index=5, to_signal_index=6, argv=0xbf8bd05c) at kernel/qobject.cpp:3112
#14 0xb6f9ef00 in QMetaObject::activate (sender=0xaae3038, m=0xb6dce6c8, from_local_signal_index=1, to_local_signal_index=2, argv=0xbf8bd05c) at kernel/qobject.cpp:3206
#15 0xb65702d1 in QAction::triggered (this=0xaae3038, _t1=false) at .moc/release-shared/moc_qaction.cpp:236
#16 0xb657181f in QAction::activate (this=0xaae3038, event=QAction::Trigger) at kernel/qaction.cpp:1160
#17 0xb69b6c94 in QMenuPrivate::activateCausedStack (this=0xaabb1c0, causedStack=..., action=0xaae3038, action_e=QAction::Trigger, self=true) at widgets/qmenu.cpp:967
#18 0xb69bd39b in QMenuPrivate::activateAction (this=0xaabb1c0, action=0xaae3038, action_e=QAction::Trigger, self=<value optimized out>) at widgets/qmenu.cpp:1060
#19 0xb69bdee2 in QMenu::mouseReleaseEvent (this=0xbf8bf0d4, e=0xbf8bd83c) at widgets/qmenu.cpp:2254
#20 0xb73a94a5 in KMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libkdeui.so.5
#21 0xb65cc73b in QWidget::event (this=0xbf8bf0d4, event=0xbf8bd83c) at kernel/qwidget.cpp:7549
#22 0xb69c0121 in QMenu::event (this=0xbf8bf0d4, e=0xbf8bd83c) at widgets/qmenu.cpp:2353
#23 0xb65767d4 in QApplicationPrivate::notify_helper (this=0x85de9f8, receiver=0xbf8bf0d4, e=0xbf8bd83c) at kernel/qapplication.cpp:4056
#24 0xb657f2a1 in QApplication::notify (this=0xbf8c1464, receiver=0xbf8bf0d4, e=0xbf8bd83c) at kernel/qapplication.cpp:3758
#25 0xb72c300d in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#26 0xb6f8996b in QCoreApplication::notifyInternal (this=0xbf8c1464, receiver=0xbf8c1464, event=0xbf8bd83c) at kernel/qcoreapplication.cpp:610
#27 0xb657e32e in QCoreApplication::sendSpontaneousEvent (receiver=0xbf8bf0d4, event=0xbf8bd83c, alienWidget=0x0, nativeWidget=0xbf8bf0d4, buttonDown=0xb6decaa0, lastMouseReceiver=...)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:216
#28 QApplicationPrivate::sendMouseEvent (receiver=0xbf8bf0d4, event=0xbf8bd83c, alienWidget=0x0, nativeWidget=0xbf8bf0d4, buttonDown=0xb6decaa0, lastMouseReceiver=...) at kernel/qapplication.cpp:2924
#29 0xb65ed09f in QETWidget::translateMouseEvent (this=0xbf8bf0d4, event=0xbf8bedec) at kernel/qapplication_x11.cpp:4343
#30 0xb65ec336 in QApplication::x11ProcessEvent (this=0xbf8c1464, event=0xbf8bedec) at kernel/qapplication_x11.cpp:3428
#31 0xb6616842 in x11EventSourceDispatch (s=0x85e1ca8, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#32 0xb5599368 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#33 0xb559c8c3 in ?? () from /usr/lib/libglib-2.0.so.0
#34 0xb559ca48 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#35 0xb6fb47f8 in QEventDispatcherGlib::processEvents (this=0x852f640, flags=...) at kernel/qeventdispatcher_glib.cpp:327
#36 0xb6615f85 in QGuiEventDispatcherGlib::processEvents (this=0x852f640, flags=...) at kernel/qguieventdispatcher_glib.cpp:202
#37 0xb6f87fba in QEventLoop::processEvents (this=0xbf8bf04c, flags=...) at kernel/qeventloop.cpp:149
#38 0xb6f88402 in QEventLoop::exec (this=0xbf8bf04c, flags=...) at kernel/qeventloop.cpp:201
#39 0xb69bff91 in QMenu::exec (this=0xbf8bf0d4, p=..., action=0x0) at widgets/qmenu.cpp:1993
#40 0xb0d3b78d in ProjectTreeView::popupContextMenu (this=0x8fccf18, pos=...) at /home/esben/kde/src/kdevplatform/plugins/projectmanagerview/projecttreeview.cpp:203
#41 0xb0d3bae5 in ProjectTreeView::qt_metacall (this=0x8fccf18, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0xbf8bf27c)
    at /home/esben/kde/build/kdevplatform/plugins/projectmanagerview/projecttreeview.moc:75
#42 0xb6f9ead3 in QMetaObject::activate (sender=0x8fccf18, from_signal_index=4, to_signal_index=4, argv=0xbf8bf27c) at kernel/qobject.cpp:3112
#43 0xb6f9f722 in QMetaObject::activate (sender=0x8fccf18, m=0xb6dcf5c8, local_signal_index=0, argv=0xbf8bf27c) at kernel/qobject.cpp:3186
#44 0xb65be6c3 in QWidget::customContextMenuRequested (this=0x8fccf18, _t1=...) at .moc/release-shared/moc_qwidget.cpp:350
#45 0xb65cce43 in QWidget::event (this=0x8fccf18, event=0xbf8bfbb4) at kernel/qwidget.cpp:7711
#46 0xb6972f03 in QFrame::event (this=0x8fccf18, e=0xbf8bfbb4) at widgets/qframe.cpp:559
#47 0xb6a11f1f in QAbstractScrollArea::viewportEvent (this=0x8fccf18, e=0x5) at widgets/qabstractscrollarea.cpp:962
#48 0xb6ac30d7 in QAbstractItemView::viewportEvent (this=0x8fccf18, event=0xbf8bfbb4) at itemviews/qabstractitemview.cpp:1476
#49 0xb6afded6 in QTreeView::viewportEvent (this=0x8fccf18, event=0xbf8bfbb4) at itemviews/qtreeview.cpp:1266
#50 0xb6a144f5 in QAbstractScrollAreaPrivate::viewportEvent (this=0x8edf3e0, o=0x8c01370, e=0xbf8bfbb4) at widgets/qabstractscrollarea_p.h:100
#51 QAbstractScrollAreaFilter::eventFilter (this=0x8edf3e0, o=0x8c01370, e=0xbf8bfbb4) at widgets/qabstractscrollarea_p.h:111
#52 0xb6f88b9a in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=0x85de9f8, receiver=0x8c01370, event=0xbf8bfbb4) at kernel/qcoreapplication.cpp:726
#53 0xb65767ac in QApplicationPrivate::notify_helper (this=0x85de9f8, receiver=0x8c01370, e=0xbf8bfbb4) at kernel/qapplication.cpp:4052
#54 0xb657ee6d in QApplication::notify (this=0xbf8c1464, receiver=0x8c01370, e=0xbf8bfbb4) at kernel/qapplication.cpp:3845
#55 0xb72c300d in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#56 0xb6f8996b in QCoreApplication::notifyInternal (this=0xbf8c1464, receiver=0xbf8c1464, event=0xbf8bfbb4) at kernel/qcoreapplication.cpp:610
#57 0xb658171e in QCoreApplication::sendSpontaneousEvent (receiver=0x8c01370, event=0x5) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:216
#58 0xb65ed5df in QETWidget::translateMouseEvent (this=0x870fd80, event=0xbf8c113c) at kernel/qapplication_x11.cpp:4415
#59 0xb65ec336 in QApplication::x11ProcessEvent (this=0xbf8c1464, event=0xbf8c113c) at kernel/qapplication_x11.cpp:3428
#60 0xb6616842 in x11EventSourceDispatch (s=0x85e1ca8, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#61 0xb5599368 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#62 0xb559c8c3 in ?? () from /usr/lib/libglib-2.0.so.0
#63 0xb559ca48 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#64 0xb6fb47f8 in QEventDispatcherGlib::processEvents (this=0x852f640, flags=...) at kernel/qeventdispatcher_glib.cpp:327
#65 0xb6615f85 in QGuiEventDispatcherGlib::processEvents (this=0x852f640, flags=...) at kernel/qguieventdispatcher_glib.cpp:202
#66 0xb6f87fba in QEventLoop::processEvents (this=0xbf8c13a0, flags=...) at kernel/qeventloop.cpp:149
#67 0xb6f88402 in QEventLoop::exec (this=0xbf8c13a0, flags=...) at kernel/qeventloop.cpp:201
#68 0xb6f8a859 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888
#69 0xb6576657 in QApplication::exec () at kernel/qapplication.cpp:3525
#70 0x0804e746 in main (argc=1, argv=0xbf8c1934) at /home/esben/kde/src/kdevelop/app/main.cpp:181

Reported using DrKonqi
Comment 1 Andreas Pakulat 2009-08-11 20:03:07 UTC
I can reproduce this here:
#0  0xf72c5466 in QByteArray::isEmpty (this=0xa9b1840) at ../../include/QtCore/../../../../kde-qt/src/corelib/tools/qbytearray.h:396
#1  0xf6cb374b in QUrlPrivate::parse (this=0xa9b1820, parseOptions=QUrlPrivate::ParseAndSet)
    at /home/andreas/src/kde-qt/src/corelib/io/qurl.cpp:3584
#2  0xf6cb53ad in QUrl::scheme (this=0xa3e2b3c) at /home/andreas/src/kde-qt/src/corelib/io/qurl.cpp:4182
#3  0xf7dfda5c in KUrl::hasSubUrl (this=0xa3e2b3c) at /home/andreas/src/kdelibs/kdecore/io/kurl.cpp:938
#4  0xf7dfebbe in KUrl::fileName (this=0xa3e2b3c, options=...) at /home/andreas/src/kdelibs/kdecore/io/kurl.cpp:1223
#5  0xeea179b2 in CMakeManager::addFileToTarget (this=0x8bbdfb8, it=0xc4f9388, target=0xa2a7b80)
    at /home/andreas/src/kdevelop/projectmanagers/cmake/cmakemanager.cpp:1076
#6  0xe806ea58 in SimpleRefactoring::createNewClass (this=0xe808f5d0, item=0xa2a7b80)
    at /home/andreas/src/kdevelop/languages/cpp/codegen/simplerefactoring.cpp:247
#7  0xe806eb48 in SimpleRefactoring::executeNewClassAction (this=0xe808f5d0)
    at /home/andreas/src/kdevelop/languages/cpp/codegen/simplerefactoring.cpp:164
Comment 2 Aleix Pol 2009-08-11 20:41:36 UTC
Actually here what we should do is to disable the KPart actions on the applychangeswidget.

I'll give a deeper look at some point. That Create Class action is broken here for me anyway :S.
Comment 3 Andreas Pakulat 2009-09-16 09:00:05 UTC
*** Bug 207531 has been marked as a duplicate of this bug. ***
Comment 4 Olivier.jg 2009-10-17 07:07:18 UTC
Has this CMake dialog been removed? I don't see it... (CMake project, using menu "Code>Create New Class"). If it has, presumably this bug can be closed.
Comment 5 Andreas Pakulat 2009-10-17 11:20:49 UTC
(In reply to comment #4)
> Has this CMake dialog been removed? I don't see it... (CMake project, using
> menu "Code>Create New Class"). If it has, presumably this bug can be closed.

No, its still there. However its apparently not always shown and I don't know the exact semantics. It should be shown if you use the project tree, right-click onto a target and select "add class" there.
Comment 6 Aleix Pol 2009-10-17 15:48:50 UTC
It's shown also when you remove file/subdirectory or add subdirectory.

Just tested and works fine for me. Except for the Ctrl+S thing that I don't know how to disable, i tried: actionCollection()->action("file_save")->setEnabled(false) but didn't work.

I guess another solution would be to accept when ctrl+s is pressed.
Comment 7 Andreas Pakulat 2009-10-17 17:34:01 UTC
(In reply to comment #6)
> Just tested and works fine for me. Except for the Ctrl+S thing that I don't
> know how to disable, i tried:
> actionCollection()->action("file_save")->setEnabled(false) but didn't work.
> 
> I guess another solution would be to accept when ctrl+s is pressed.

So you're embedding katepart I guess? Are you doing that via the partmanager? To avoid having those shortcuts available, you simply need to make sure that no xmlgui merging is done. Either that or instead of a standalone dialog combine this with the patchreview plugin...
Comment 8 Aleix Pol 2009-10-17 17:48:00 UTC
http://websvn.kde.org/trunk/KDE/kdevplatform/language/codegen/applychangeswidget.cpp?revision=1017523&view=markup

line 212.

Probably we'd better use the PartController for that, indeed.

Yes, it's embeddign a kate part (or anything the mimetype trader offers).
Comment 9 Andreas Pakulat 2009-10-17 19:23:34 UTC
It turns out that using IPartController::createPart causes an endless loop with this message:

QMetaObject::indexOfSignal:KateDocument: Conflict with KTextEditor::Document::highlightingModeChanged(KTextEditor::Document*)
QMetaObject::indexOfSignal:KateViewEncodingAction: Conflict with KSelectAction::triggered(QString)

Seems like a problem inside kate.

Now to the actual problem, it only exists when hitting Ctrl+S and then Ok directly afterwards, so KDevelop is not yet done re-reading the changes saved via Ctrl+S.

I tried to find the actions, but somehow I can't find the Kate-actions.

One thing I noticed: It expects KTE, but doesn't enforce KTE. So maybe we can workaround/fix this by using the example from the KTE docs that show how to use KEditorChooser to create a KTE document and view.
Comment 10 Andreas Pakulat 2009-12-06 10:46:55 UTC
*** Bug 217503 has been marked as a duplicate of this bug. ***
Comment 11 Aleix Pol 2009-12-07 03:07:45 UTC
SVN commit 1059611 by apol:

Prevent the user to save the file in the applychangeswidget, it should be changed programatically (when ok is clicked).

BUG: 203428


 M  +10 -1     applychangeswidget.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1059611