Bug 182861 - Crash in file open dialog
Summary: Crash in file open dialog
Status: RESOLVED FIXED
Alias: None
Product: kdelibs
Classification: Unmaintained
Component: kdecore (other bugs)
Version First Reported In: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Olivier Goffart
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-02-02 13:46 UTC by Aleksey Palazhchenko
Modified: 2009-02-10 10:39 UTC (History)
3 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Aleksey Palazhchenko 2009-02-02 13:46:40 UTC
Version:            (using KDE 4.2.0)
OS:                Linux
Installed from:    Ubuntu Packages

Hi,

I'm using git snapshot of QtCreator with git snapshot of Qt 4.5. After updating to kde42 application crashes in open file dialog.

Distribution: Kubuntu 8.10 with kde42 from PPA (http://www.kubuntu.org/news/kde-4.2)
QtCreator and qt-snapshot compiled with g++ 4.3.2-1ubuntu12

I think it's bug in kde because:
- kde41 doesn't crash
- backtrace points to kcomponentdata.cpp:135
Correct me if I'm wrong.

Backtrace:
#0  KComponentDataPrivate::lazyInit (this=0x0, component=@0x9180600) at /build/buildd/kde4libs-4.2.0/kdecore/kernel/kcomponentdata.cpp:135                                          
#1  0xb60b61b9 in KComponentData::config (this=0x9180600) at /build/buildd/kde4libs-4.2.0/kdecore/kernel/kcomponentdata.cpp:200                                                     
#2  0xb60b46d8 in KGlobal::config () at /build/buildd/kde4libs-4.2.0/kdecore/kernel/kglobal.cpp:113                                                                                 
warning: (Internal error: pc 0xb1c5b78a in read in psymtab, but not in symtab.)                                                                                                     

#3  0xb1c5b78b in KFileDialogQtOverride::getOpenFileNames (parent=warning: (Internal error: pc 0xb1c5b78a in read in psymtab, but not in symtab.)

warning: (Internal error: pc 0xb1c5b750 in read in psymtab, but not in symtab.)

warning: (Internal error: pc 0xb1c5b78a in read in psymtab, but not in symtab.)

0x91cbfd0, caption=warning: (Internal error: pc 0xb1c5b78a in read in psymtab, but not in symtab.)

@0xbff51610, dir=warning: (Internal error: pc 0xb1c5b78a in read in psymtab, but not in symtab.)

@0xbff51628, filter=warning: (Internal error: pc 0xb1c5b78a in read in psymtab, but not in symtab.)

@0x924b8f4, selectedFilter=warning: (Internal error: pc 0xb1c5b78a in read in psymtab, but not in symtab.)

0x924b8f8, options=warning: (Internal error: pc 0xb1c5b78a in read in psymtab, but not in symtab.)


      {i = -1074457160}) at /build/buildd/kde4libs-4.2.0/kio/kfile/kfiledialog.cpp:211
#4  0xb7996e18 in QFileDialog::getOpenFileNames (parent=0x91cbfd0, caption=@0xbff51610, dir=@0xbff51628, filter=@0x924b8f4, selectedFilter=0x924b8f8, options={i = -1074457076})
    at dialogs/qfiledialog.cpp:1639
#5  0xb5e5cc69 in Core::EditorManager::getOpenFileNames (this=0x92378e8) at editormanager/editormanager.cpp:922
#6  0xb5e23224 in Core::Internal::MainWindow::openFile (this=0x91cbfd0) at mainwindow.cpp:699
#7  0xb5ee268d in Core::Internal::MainWindow::qt_metacall (this=0x91cbfd0, _c=QMetaObject::InvokeMetaMethod, _id=10, _a=0xbff517dc) at .moc/release-shared/moc_mainwindow.cpp:113
#8  0xb6cebfd1 in QMetaObject::activate (sender=0x9206818, from_signal_index=5, to_signal_index=6, argv=0xbff517dc) at kernel/qobject.cpp:3055
#9  0xb6cec302 in QMetaObject::activate (sender=0x9206818, m=0xb7d7e2e8, from_local_signal_index=1, to_local_signal_index=2, argv=0xbff517dc) at kernel/qobject.cpp:3147
#10 0xb733ff1e in QAction::triggered (this=0x9206818, _t1=false) at .moc/debug-shared/moc_qaction.cpp:236
< ... other Qt stuff ... >
Comment 1 Aleksey Palazhchenko 2009-02-02 14:55:11 UTC
Looks like it related with widget style engine or something

Crashes with:
- Oxygen
- Plastique
- Cleanlooks
- CDE
- Motif
- Windows
- (others?)

Works with:
- QtCurve
- Klearlooks
Comment 2 Olivier Goffart 2009-02-02 17:47:50 UTC
SVN commit 920285 by ogoffart:

Create a default KComponenentData if there is none.
This is usefull for pure Qt applications that loads KDE plugins.

KStyle and Oxygen actually worked around the problem but that can be removed
QtCreator may crash when opening a file dialog because KFileDialog gets hooked by some designer plugin and, KFileDialog request KGlobal::config for many things.

BUG: 182861



 M  +21 -7     kglobal.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=920285
Comment 3 Dennis Nienhüser 2009-02-10 10:39:49 UTC
Thanks for the fix, Olivier, the same happened to me when embedding the KDE version of MarbleWidget, similar backtrace:

#0  KComponentDataPrivate::lazyInit (this=0x0, component=@0x8cc05b0) at /build/buildd/kde4libs-4.2.0/kdecore/kernel/kcomponentdata.cpp:135
#1  0xb1d711b9 in KComponentData::config (this=0x8cc05b0) at /build/buildd/kde4libs-4.2.0/kdecore/kernel/kcomponentdata.cpp:200           
#2  0xb1d6f6d8 in KGlobal::config () at /build/buildd/kde4libs-4.2.0/kdecore/kernel/kglobal.cpp:113                                       
#3  0xb121cb1b in KFileDialogQtOverride::getOpenFileName {i = -1077477224}) at /build/buildd/kde4libs-4.2.0/kio/kfile/kfiledialog.cpp:211
#4  0xb7ab97fd in QFileDialog::getOpenFileName () from /usr/lib/libQtGui.so.4
[...]

Backported in http://websvn.kde.org/?view=rev&revision=920287 so the fix will be in KDE 4.2.1

Regarding the style change as a workaround: QtCurve also crashes here, Klearlooks works.