Bug 258574

Summary: Konsole crashes with segmentation fault on startup
Product: [Applications] konsole Reporter: Tristan Miller <psychonaut>
Component: generalAssignee: Konsole Developer <konsole-devel>
Status: RESOLVED DOWNSTREAM    
Severity: crash    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Tristan Miller 2010-12-02 16:06:10 UTC
Version:           unspecified (using KDE 4.5.4) 
OS:                Linux

I upgraded from KDE 4.5.3 to KDE 4.5.4 today, and now Konsole crashes upon startup.

Reproducible: Always

Steps to Reproduce:
1. Type "konsole" at the command prompt.

Actual Results:  
2. The konsole window appears briefly, then disappears.  The following is output to the console where konsole was launched:

$ konsole
[psy@sable:~]$ KCrash: Application 'konsole' crashing...
KCrash: Attempting to start /usr/lib64/kde4/libexec/drkonqi from kdeinit
sock_file=/home/psy/.kde4/socket-sable/kdeinit4__1016
Warning: connect() failed: : No such file or directory
KCrash: Attempting to start /usr/lib64/kde4/libexec/drkonqi directly

I then get a crash dialog with the following backtrace:

Application: Konsole (konsole), signal: Segmentation fault
[KCrash Handler]
#4  0x00007fdbd09314d0 in FcValueCanonicalize () from /usr/lib64/libfontconfig.so.1
#5  0x00007fdbd092f227 in IA__FcFontRenderPrepare () from /usr/lib64/libfontconfig.so.1
#6  0x00007fdbd092f40f in IA__FcFontMatch () from /usr/lib64/libfontconfig.so.1
#7  0x00007fdbd5eae400 in QFontEngineMultiFT::loadEngine(int) () from /usr/lib64/libQtGui.so.4
#8  0x00007fdbd5dec1e6 in ?? () from /usr/lib64/libQtGui.so.4
#9  0x00007fdbd5e1c097 in QTextEngine::shapeTextWithHarfbuzz(int) const () from /usr/lib64/libQtGui.so.4
#10 0x00007fdbd5e1cd37 in QTextEngine::shapeText(int) const () from /usr/lib64/libQtGui.so.4
#11 0x00007fdbd5e1d0e5 in QTextEngine::shape(int) const () from /usr/lib64/libQtGui.so.4
#12 0x00007fdbd5e26ef2 in QTextLine::layout_helper(int) () from /usr/lib64/libQtGui.so.4
#13 0x00007fdbd5d2ff52 in ?? () from /usr/lib64/libQtGui.so.4
#14 0x00007fdbd5d30e76 in QPainter::drawText(QRect const&, int, QString const&, QRect*) () from /usr/lib64/libQtGui.so.4
#15 0x00007fdbd785b84c in Konsole::TerminalDisplay::drawCharacters (this=0x7a4890, painter=..., rect=..., text=..., style=<value optimized out>, invertCharacterColor=<value optimized out>)
    at /usr/src/debug/kdebase-4.5.4/apps/konsole/src/TerminalDisplay.cpp:716
#16 0x00007fdbd785bbc3 in Konsole::TerminalDisplay::drawTextFragment (this=0x7a4890, painter=..., rect=..., text=..., style=0x9b14e0)
    at /usr/src/debug/kdebase-4.5.4/apps/konsole/src/TerminalDisplay.cpp:743
#17 0x00007fdbd7860bfd in Konsole::TerminalDisplay::drawContents (this=0x7a4890, paint=..., rect=<value optimized out>) at /usr/src/debug/kdebase-4.5.4/apps/konsole/src/TerminalDisplay.cpp:1490
#18 0x00007fdbd786325a in Konsole::TerminalDisplay::paintEvent (this=0x7a4890, pe=<value optimized out>) at /usr/src/debug/kdebase-4.5.4/apps/konsole/src/TerminalDisplay.cpp:1215
#19 0x00007fdbd5c31d6e in QWidget::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#20 0x00007fdbd785e84d in Konsole::TerminalDisplay::event (this=0x7a4890, event=0x7fff11851480) at /usr/src/debug/kdebase-4.5.4/apps/konsole/src/TerminalDisplay.cpp:2652
#21 0x00007fdbd5be14d4 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#22 0x00007fdbd5be9aca in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#23 0x00007fdbd71157d6 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#24 0x00007fdbd67efe4c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#25 0x00007fdbd5c2d1b2 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#26 0x00007fdbd5c2dd7f in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) ()
   from /usr/lib64/libQtGui.so.4
#27 0x00007fdbd5c2cf1a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#28 0x00007fdbd5c2dd7f in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) ()
   from /usr/lib64/libQtGui.so.4
#29 0x00007fdbd5c2cf1a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#30 0x00007fdbd5c2dd7f in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) ()
   from /usr/lib64/libQtGui.so.4
#31 0x00007fdbd5c2cf1a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#32 0x00007fdbd5c2dd7f in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) ()
   from /usr/lib64/libQtGui.so.4
#33 0x00007fdbd5c2cf1a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#34 0x00007fdbd5c2dd7f in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) ()
   from /usr/lib64/libQtGui.so.4
#35 0x00007fdbd5c2cf1a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#36 0x00007fdbd5de1231 in ?? () from /usr/lib64/libQtGui.so.4
#37 0x00007fdbd5de14f9 in ?? () from /usr/lib64/libQtGui.so.4
#38 0x00007fdbd5c5b490 in ?? () from /usr/lib64/libQtGui.so.4
#39 0x00007fdbd5c5c38b in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib64/libQtGui.so.4
#40 0x00007fdbd5c82492 in ?? () from /usr/lib64/libQtGui.so.4
#41 0x00007fdbd1ccda93 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#42 0x00007fdbd1cce270 in ?? () from /usr/lib64/libglib-2.0.so.0
#43 0x00007fdbd1cce510 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#44 0x00007fdbd681867f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#45 0x00007fdbd5c8214e in ?? () from /usr/lib64/libQtGui.so.4
#46 0x00007fdbd67ef292 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#47 0x00007fdbd67ef495 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#48 0x00007fdbd67f388b in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4
#49 0x00007fdbd7e1ac46 in kdemain (argc=1, argv=0x7fff11853ce8) at /usr/src/debug/kdebase-4.5.4/apps/konsole/src/main.cpp:77
#50 0x00007fdbd7ac5b7d in __libc_start_main () from /lib64/libc.so.6
#51 0x0000000000400699 in _start () at ../sysdeps/x86_64/elf/start.S:113


Expected Results:  
2. Konsole should have started up without crashing as usual
Comment 1 Tristan Miller 2010-12-03 13:47:34 UTC
The problem is caused by openSUSE's faulty build of libfontconfig.  See https://bugzilla.novell.com/show_bug.cgi?id=656775