kdevelop exitting on its own

René J.V. Bertin rjvbertin at gmail.com
Sat Oct 18 23:36:58 BST 2014


On both my Linux and my OS X systems I've noticed that KDevelop 4.7.0 and 4.7.60 have an irregular habit of exitting after completing the parse-on-open of the projects in the session I started with. This happens regardless of whether I'm doing something in KDevelop or elsewhere.
It's been suggested to set a breakpoint in KDevelop::MainWindow::~MainWindow but hasn't yet proved productive (rather the contrary; starting kdevelop under a debugger take a lot of patience on the systems I have at my disposal). 

So I added a qDebug output of kBackTrace() in KDevelop::MainWindow::~MainWindow, assuming I'd be able to get some idea of where the exit request came from when it happens.

Turns out KDevelop exits without calling this MainWindow destructor:

=============================================
<snip>
kdevelop(5560)/kdevelop (cpp support) Cpp::instantiateDeclarationAndContext: Resolved bad base-class "ParserCollection< T >" "ParserCollection< T >" 
kdevelop(5560)/kdevelop (cpp support) Cpp::instantiateDeclarationAndContext: Resolved bad base-class "QDBusPendingReplyData" "function <notype> ()" 
kdevelop(5560)/kdevelop (cpp support) Cpp::instantiateDeclarationAndContext: Resolved bad base-class "QDBusPendingReplyData" "function <notype> ()" 
kdevelop(5560)/kdevelop (cpp support) Cpp::instantiateDeclarationAndContext: Resolved bad base-class "QDBusPendingReplyData" "function <notype> ()" 
Thread::requestAbort: not running.
Thread::requestAbort: not running.
kdevelop(5560)/kdeui (kdelibs) KXMLGUIClient::~KXMLGUIClient: 0x1208a8600 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes. 
kdevelop(5560)/kdeui (kdelibs) KXMLGUIClient::~KXMLGUIClient: 0x120b0a3e0 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes. 
kdevelop(5560)/kdeui (kdelibs) KXMLGUIClient::~KXMLGUIClient: 0x10a56c8d0 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes. 
register count: 0, destroy count 0: 667.200 user_cpu 1301.076 kernel_cpu 39:43.52 total_time 82.5%CPU {0W 0X 0D 0K 0M 0F 0R 3340I 135309O 99735r 98661s 6014k 97749w 0c}
=============================================

That's a session in which I have 4 projects, for kdepim and kdepimlibs 4.12.5 and 4.13.3 . Normally things work normally when I relaunch the session, but this time:

=============================================
> kdevelop --ps
kdevelop(22402)/kdeui (kdelibs): Attempt to use QAction "commit_or_finish_review" with KXMLGUIFactory! 
kdevelop(22402)/Kate KateDocument::readVariableLine: "Using deprecated modeline 'remove-trailing-space'. Please replace with 'remove-trailing-spaces modified;', see http://docs.kde.org/stable/en/applications/kate/config-variables.html#variable-remove-trailing-spaces" 
kdevelop(22402)/Kate KateDocument::readVariableLine: "Using deprecated modeline 'remove-trailing-space'. Please replace with 'remove-trailing-spaces modified;', see http://docs.kde.org/stable/en/applications/kate/config-variables.html#variable-remove-trailing-spaces" 
kdevelop(22402)/Kate KateDocument::readVariableLine: "Using deprecated modeline 'remove-trailing-space'. Please replace with 'remove-trailing-spaces modified;', see http://docs.kde.org/stable/en/applications/kate/config-variables.html#variable-remove-trailing-spaces" 
kdevelop(22402)/Kate KateDocument::readVariableLine: "Using deprecated modeline 'remove-trailing-space'. Please replace with 'remove-trailing-spaces modified;', see http://docs.kde.org/stable/en/applications/kate/config-variables.html#variable-remove-trailing-spaces" 
qrc:/qml/main.qml:23:1: QML Loader: Binding loop detected for property "source"
qrc:/qml/main.qml:23:1: QML Loader: Binding loop detected for property "source"
kdevelop(22402)/kdevplatform (shell) KDevelop::SessionControllerPrivate::performRecovery: Starting recovery from  "/Volumes/Debian/Users/bertin/KDE/.kde/share/apps/kdevelop/sessions/{c19618a0-4162-458b-86d6-2c2d904043da}/recovery/current" 
QMenu: No OSMenuRef created for popup menu
QMenu: No OSMenuRef created for popup menu
kdevelop(22402)/kdevplatform (shell) KDevelop::RunController::registerJob: non-killable job CMakeImportJob(0x13c448f30) registered - this might lead to crashes on shutdown. 
kdevelop(22402)/kdevplatform (shell) KDevelop::RunController::registerJob: non-killable job CMakeImportJob(0x132151460) registered - this might lead to crashes on shutdown. 
kdevelop(22402)/kdevplatform (shell) KDevelop::RunController::registerJob: non-killable job CMakeImportJob(0x13cea2c70) registered - this might lead to crashes on shutdown. 
kdevelop(22402) KSambaSharePrivate::testparmParamValue: We got some errors while running testparm "Load smb config files from /private/etc/smb.conf
WARNING: The "printer admin" option is deprecated
init_iconv: Conversion from UTF-16LE to CP0 not supported
init_iconv: Attempting to replace with conversion from UTF-16LE to ASCII
init_iconv: Conversion from UTF-8-MAC to CP0 not supported
init_iconv: Attempting to replace with conversion from ASCII to ASCII
init_iconv: Conversion from UTF-8-MAC to CP0 not supported
init_iconv: Attempting to replace with conversion from ASCII to ASCII
init_iconv: Conversion from CP0 to UTF-16LE not supported
init_iconv: Attempting to replace with conversion from ASCII to UTF-16LE
init_iconv: Conversion from CP0 to UTF-8-MAC not supported
init_iconv: Attempting to replace with conversion from ASCII to ASCII
init_iconv: Conversion from CP0 to UTF-8-MAC not supported
init_iconv: Attempting to replace with conversion from ASCII to ASCII
init_iconv: Conversion from CP0 to UTF8 not supported
init_iconv: Attempting to replace with conversion from ASCII to ASCII
init_iconv: Conversion from CP0 to UTF-16BE not supported
init_iconv: Attempting to replace with conversion from ASCII to UTF-16BE
init_iconv: Conversion from UTF8 to CP0 not supported
init_iconv: Attempting to replace with conversion from ASCII to ASCII
init_iconv: Conversion from UTF-16BE to CP0 not supported
init_iconv: Attempting to replace with conversion from UTF-16BE to ASCII
Unknown parameter encountered: "brlm"
Ignoring unknown parameter "brlm"
Processing section "[homes]"
Processing section "[AcroDist]"
init_iconv: Conversion from UTF-16LE to CP0 not supported
init_iconv: Attempting to replace with conversion from UTF-16LE to ASCII
init_iconv: Conversion from UTF-8-MAC to CP0 not supported
init_iconv: Attempting to replace with conversion from ASCII to ASCII
init_iconv: Conversion from UTF-8-MAC to CP0 not supported
init_iconv: Attempting to replace with conversion from ASCII to ASCII
init_iconv: Conversion from CP0 to UTF-16LE not supported
init_iconv: Attempting to replace with conversion from ASCII to UTF-16LE
init_iconv: Conversion from CP0 to UTF-8-MAC not supported
init_iconv: Attempting to replace with conversion from ASCII to ASCII
init_iconv: Conversion from CP0 to UTF-8-MAC not supported
init_iconv: Attempting to replace with conversion from ASCII to ASCII
init_iconv: Conversion from CP0 to UTF8 not supported
init_iconv: Attempting to replace with conversion from ASCII to ASCII
init_iconv: Conversion from CP0 to UTF-16BE not supported
init_iconv: Attempting to replace with conversion from ASCII to UTF-16BE
init_iconv: Conversion from UTF8 to CP0 not supported
init_iconv: Attempting to replace with conversion from ASCII to ASCII
init_iconv: Conversion from UTF-16BE to CP0 not supported
init_iconv: Attempting to replace with conversion from UTF-16BE to ASCII
Loaded services file OK.
WARNING: Your 'passdb backend' configuration includes multiple backends.  This
is deprecated since Samba 3.0.23.  Please check WHATSNEW.txt or the section 'Passdb
Changes' from the ChangeNotes as part of the Samba HOWTO collection.  Only the first
backend (opendirectorysam) is used.  The rest is ignored.
" 
kdevelop(22402) KMimeTypePrivate::ensureXmlDataLoaded: Missing <comment> field in "audio/wav.xml" 
kdevelop(22402)/kdevplatform (shell) KDevelop::RunController::registerJob: non-killable job CMakeImportJob(0x132511580) registered - this might lead to crashes on shutdown. 
kdevelop(22402)/kdevelop (cpp support) contentFromProxy: proxy-context for "/Volumes/Debian/Users/bertin/work/src/new/KDE/kdepim/kdepimlibs-4.13.3/kimap/searchjob.h" has no imports! 1092 
kdevelop(22402)/kdevelop (cpp support) CPPInternalParseJob::run: Context should be imported, but is not: "/Volumes/Debian/Users/bertin/work/src/new/KDE/kdepim/kdepimlibs-4.13.3/kimap/searchjob.cpp"  <-  "/Volumes/Debian/Users/bertin/work/src/new/KDE/kdepim/kdepimlibs-4.13.3/kimap/searchjob.h" 
Thread::requestAbort: not running.
Thread::requestAbort: not running.
kdevelop(22402)/kdeui (kdelibs) KXMLGUIClient::~KXMLGUIClient: 0x11e366d50 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes. 
kdevelop(22402)/kdeui (kdelibs) KXMLGUIClient::~KXMLGUIClient: 0x11d2a9a50 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes. 
kdevelop(22402)/kdeui (kdelibs) KXMLGUIClient::~KXMLGUIClient: 0x12084b1e0 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes. 
register count: 0, destroy count 0: 182.595 user_cpu 362.217 kernel_cpu 9:14.38 total_time 98.2%CPU {0W 0X 0D 0K 0M 0F 0R 713I 45956O 99428r 98342s 5806k 64768w 0c}
=============================================

3rd time was a charm: here's the output from a session that completed the parsing phase and let *me* quit the application personally:

=============================================
<snip>
init_iconv: Attempting to replace with conversion from UTF-16BE to ASCII
Loaded services file OK.
WARNING: Your 'passdb backend' configuration includes multiple backends.  This
is deprecated since Samba 3.0.23.  Please check WHATSNEW.txt or the section 'Passdb
Changes' from the ChangeNotes as part of the Samba HOWTO collection.  Only the first
backend (opendirectorysam) is used.  The rest is ignored.
" 
kdevelop(37991) KMimeTypePrivate::ensureXmlDataLoaded: Missing <comment> field in "audio/wav.xml" 
kdevelop(37991)/kdevplatform (shell) KDevelop::RunController::registerJob: non-killable job CMakeImportJob(0x13ccacf70) registered - this might lead to crashes on shutdown. 
kdevelop(37991)/kdevplatform (shell) KDevelop::RunController::registerJob: non-killable job CMakeImportJob(0x13ccd5ab0) registered - this might lead to crashes on shutdown. 
MainWindow::~MainWindow() called, backtrace: "[
0: 0   libkdecore.5.dylib                  0x00000001000ba4e3 _Z14kRealBacktracei + 67
1: 1   libkdevplatformshell.8.dylib        0x000000010055055a _ZN8KDevelop10MainWindowD1Ev + 90
]
" 
Thread::requestAbort: not running.
Thread::requestAbort: not running.
register count: 0, destroy count 0: 175.677 user_cpu 335.598 kernel_cpu 8:50.56 total_time 96.3%CPU {0W 0X 0D 0K 0M 0F 0R 23I 41819O 99295r 98219s 5802k 62674w 0c}
=============================================

Is there any chance that this issue might be related to the use of non-killable CMakeImportJobs?

Thanks,

R.




More information about the KDevelop mailing list