Bug 119016

Summary: khtml crash when rendering for printing preview on amd64
Product: [Applications] konqueror Reporter: Thorsten Schnebeck <thorsten.schnebeck>
Component: khtmlAssignee: Konqueror Developers <konq-bugs>
Status: RESOLVED DUPLICATE    
Severity: normal    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Thorsten Schnebeck 2005-12-26 15:19:22 UTC
Version:            (using KDE Devel)
Installed from:    Compiled sources
Compiler:          gcc (GCC) 3.4.4 (Gentoo 3.4.4-r1, ssp-3.4.4-1.0, pie-8.7.8),
KDE: 3.5.0 (svn stable-branch), Qt: 3.3.4 (gentoo-ebuild)) 
OS:                Linux

When switching from x86 to amd64 I start to have a problem when printing html with konqueror. Cause konqi crashs often without telling anything I run it in gdb and searched for a website that crashed everytime.

Test goes like this:
Enter website http://www.hobix.com/textile/quick.html
press print button,
choose pdf printer with preview
print to file ~/print.pdf
custom margins: 4x 0,5cm

Now I get this crash:

kio (KMimeMagic): [bool KMimeMagic::mergeConfig(const QString&)] /usr/kde/3.5/share/config/magic/kexi.magic
kio (KMimeMagic): [bool KMimeMagic::mergeConfig(const QString&)] /usr/kde/3.5/share/config/magic/x-raw.magic
kio (UIServer): Source Mimetype: application/octet-stream
kio (UIServer): Dest Mimetype: application/pdf
kio (KTrader): KServiceTypeProfile::offers serviceType=application/pdf genericServiceType=Application
kio (KTrader): KServiceTypeProfile::offers serviceType=application/pdf genericServiceType=KParts/ReadOnlyPart
kio (KTrader): query for application/pdf : returning 0 offers
kdecore (KLocale): KLocale::initFormat
kdecore (KAccel): KAcceleratorManager::manage
kdecore (KAccel): A&bbrechen 1 1 Abbrechen
kdecore (KAccel): &Umbenennen 0 0 Umbenennen
kdecore (KAccel): &Neuen Namen vorschlagen 0 0 Neuen Namen vorschlagen
kdecore (KAccel): Ü&berschreiben 1 1 Überschreiben
kdecore (KAccel): findAccelerators
kdecore (KAccel): reset Abbrechen
kdecore (KAccel): reset Umbenennen
kdecore (KAccel): reset Neuen Namen vorschlagen
kdecore (KAccel): reset Überschreiben
kdecore (KAccel): cnt Abbrechen
kdecore (KAccel): cnt
kdecore (KAccel): cnt
kdecore (KAccel): cnt Überschreiben
kdecore (KAccel): write 0 KPushButton A&bbrechen
kdecore (KAccel): write 1 QPushButton &Umbenennen
kdecore (KAccel): write 2 QPushButton &Neuen Namen vorschlagen
kdecore (KAccel): write 3 QPushButton &Überschreiben
kdecore (KAccel): children KPushButton
kdecore (KAccel): children QPushButton
kdecore (KAccel): children QPushButton
kdecore (KAccel): children QPushButton
kdecore (KAccel): KAcceleratorManager::manage
kdecore (KAccel): A&bbrechen 1 1 Abbrechen
kdecore (KAccel): &Umbenennen 0 0 Umbenennen
kdecore (KAccel): &Neuen Namen vorschlagen 0 0 Neuen Namen vorschlagen
kdecore (KAccel): &Überschreiben 0 0 Überschreiben
kdecore (KAccel): findAccelerators
kdecore (KAccel): reset Abbrechen
kdecore (KAccel): reset Umbenennen
kdecore (KAccel): reset Neuen Namen vorschlagen
kdecore (KAccel): reset Überschreiben
kdecore (KAccel): cnt Abbrechen
kdecore (KAccel): cnt
kdecore (KAccel): cnt
kdecore (KAccel): cnt
kdecore (KAccel): write 0 KPushButton A&bbrechen
kdecore (KAccel): write 1 QPushButton &Umbenennen
kdecore (KAccel): write 2 QPushButton &Neuen Namen vorschlagen
kdecore (KAccel): write 3 QPushButton &Überschreiben
kdecore (KAccel): children KPushButton
kdecore (KAccel): children QPushButton
kdecore (KAccel): children QPushButton
kdecore (KAccel): children QPushButton
kdecore (KAccel): KAcceleratorManager::manage
kdecore (KAccel): A&bbrechen 1 1 Abbrechen
kdecore (KAccel): &Umbenennen 0 0 Umbenennen
kdecore (KAccel): &Neuen Namen vorschlagen 0 0 Neuen Namen vorschlagen
kdecore (KAccel): &Überschreiben 0 0 Überschreiben
kdecore (KAccel): findAccelerators
kdecore (KAccel): reset Abbrechen
kdecore (KAccel): reset Umbenennen
kdecore (KAccel): reset Neuen Namen vorschlagen
kdecore (KAccel): reset Überschreiben
kdecore (KAccel): cnt Abbrechen
kdecore (KAccel): cnt
kdecore (KAccel): cnt
kdecore (KAccel): cnt
kdecore (KAccel): write 0 KPushButton A&bbrechen
kdecore (KAccel): write 1 QPushButton &Umbenennen
kdecore (KAccel): write 2 QPushButton &Neuen Namen vorschlagen
kdecore (KAccel): write 3 QPushButton &Überschreiben
kdecore (KAccel): children KPushButton
kdecore (KAccel): children QPushButton
kdecore (KAccel): children QPushButton
kdecore (KAccel): children QPushButton
kdeprint: kdeprint: unregistering 0x118e050, number of objects = 5
kdecore (KAccel): ~KAccel(): this = 0x11ae010
kdecore (KAccel): ~KAccelBase(): this = 0x11af080
kdecore (KAccel):       KAccelActions::clear()
kdeprint: kdeprint: unregistering 0x1192de0, number of objects = 4
kdeprint: kdeprint: unregistering 0x11aafe8, number of objects = 3
kdeprint: kdeprint: status message: Initialisierung...
kdeprint: Resetting page size
kdeprint: ********************
kdeprint: _kde-filters =
kdeprint: _kde-ps2pdf-colimageres = 400
kdeprint: _kde-ps2pdf-grayimageres = 400
kdeprint: _kde-ps2pdf-monores = 400
kdeprint: _kde-ps2pdf-resol = 600x600
kdeprint: app-khtml-printfriendly = true
kdeprint: app-khtml-printheader = true
kdeprint: app-khtml-printimages = true
kdeprint: kde-collate = Uncollate
kdeprint: kde-colormode = GrayScale
kdeprint: kde-copies = 1
kdeprint: kde-creator = KDE 3.5.0 HTML Library
kdeprint: kde-current = 0
kdeprint: kde-docname = http://www.hobix.com/textile/quick.html
kdeprint: kde-fullpage = 0
kdeprint: kde-isspecial = 1
kdeprint: kde-margin-bottom = 14.1732
kdeprint: kde-margin-left = 14.1732
kdeprint: kde-margin-right = 14.1732
kdeprint: kde-margin-top = 14.1732
kdeprint: kde-orientation = Portrait
kdeprint: kde-outputfilename = /home/schnebeck/print.pdf
kdeprint: kde-outputtofile = 1
kdeprint: kde-pageorder = Forward
kdeprint: kde-pageset = 0
kdeprint: kde-pagesize = 0
kdeprint: kde-preview = 1
kdeprint: kde-printcommand =
kdeprint: kde-range =
kdeprint: kde-special-command = ps2pdf
kdeprint: kdeprint: status message: Erstellen der Druckdaten: Seite 1
khtml: printing: physical page width = 755 height = 1085
khtml: printing: html page width = 755 height = 5181
khtml: printing: margins left = 19 top = 19
khtml: printing: paper width = 755 height = 1085
khtml: printing: scaled html width = 755 height = 1063
khtml (render): Widows: 1
khtml (render): Widows: 1
[...hundreds of times...]
khtml (render): Widows: 1
khtml (render): Widows: 1

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 46912531988304 (LWP 9502)]
0x00002aaaabfd812d in kdbgstream::flush () from /usr/kde/3.5/lib/libkdecore.so.4

(gdb) bt
#0  0x00002aaaabfd812d in kdbgstream::flush () from /usr/kde/3.5/lib/libkdecore.so.4
#1  0x00002aaaaac323b1 in endl () from /usr/kde/3.5/lib/libkdeinit_konqueror.so
#2  0x00002aaaadbb1940 in khtml::RenderBlock::layoutInlineChildren ()
   from /usr/kde/3.5/lib/libkhtml.so.4
#3  0x00002aaaadbb1990 in khtml::RenderBlock::layoutInlineChildren ()
   from /usr/kde/3.5/lib/libkhtml.so.4
#4  0x00002aaaadbb1990 in khtml::RenderBlock::layoutInlineChildren ()
   from /usr/kde/3.5/lib/libkhtml.so.4
#5  0x00002aaaadbb1990 in 

(khtml::RenderBlock::layoutInlineChildren () is also hundreds of times. It ends with: )

#12743 0x00002aaaadbb1990 in khtml::RenderBlock::layoutInlineChildren ()
   from /usr/kde/3.5/lib/libkhtml.so.4
#12744 0x00002aaaadbb1990 in khtml::RenderBlock::layoutInlineChildren ()
   from /usr/kde/3.5/lib/libkhtml.so.4
#12745 0x00002aaaadbb1990 in khtml::RenderBlock::layoutInlineChildren ()
   from /usr/kde/3.5/lib/libkhtml.so.4
#12746 0x00002aaaadbbbf2a in khtml::RenderBlock::layoutBlock () from /usr/kde/3.5/lib/libkhtml.so.4
#12747 0x00002aaaadbe7c07 in khtml::RenderTableCell::layout () from /usr/kde/3.5/lib/libkhtml.so.4
#12748 0x00002aaaadbe768f in khtml::RenderTableRow::layout () from /usr/kde/3.5/lib/libkhtml.so.4
#12749 0x00002aaaadbcf085 in khtml::RenderContainer::layout () from /usr/kde/3.5/lib/libkhtml.so.4

#12750 0x00002aaaadbec24e in khtml::RenderTable::layout () from /usr/kde/3.5/lib/libkhtml.so.4
#12751 0x00002aaaadbbbbef in khtml::RenderBlock::layoutBlockChildren ()
   from /usr/kde/3.5/lib/libkhtml.so.4
#12752 0x00002aaaadbbc26f in khtml::RenderBlock::layoutBlock () from /usr/kde/3.5/lib/libkhtml.so.4
#12753 0x00002aaaadc0bbc8 in khtml::RenderBody::layout () from /usr/kde/3.5/lib/libkhtml.so.4
#12754 0x00002aaaadbbbbef in khtml::RenderBlock::layoutBlockChildren ()
---Type <return> to continue, or q <return> to quit---
   from /usr/kde/3.5/lib/libkhtml.so.4
#12755 0x00002aaaadbbc26f in khtml::RenderBlock::layoutBlock () from /usr/kde/3.5/lib/libkhtml.so.4
#12756 0x00002aaaadbbbbef in khtml::RenderBlock::layoutBlockChildren ()
   from /usr/kde/3.5/lib/libkhtml.so.4
#12757 0x00002aaaadbbc26f in khtml::RenderBlock::layoutBlock () from /usr/kde/3.5/lib/libkhtml.so.4
#12758 0x00002aaaadc0586e in khtml::RenderCanvas::layout () from /usr/kde/3.5/lib/libkhtml.so.4

#12759 0x00002aaaadae4d36 in KHTMLView::print () from /usr/kde/3.5/lib/libkhtml.so.4
#12760 0x00002aaaadb3b05a in KHTMLPartBrowserExtension::qt_invoke ()
   from /usr/kde/3.5/lib/libkhtml.so.4
#12761 0x0000003f74c3ef68 in QObject::activate_signal () from /usr/qt/3/lib64/libqt-mt.so.3
#12762 0x0000003f74c3f6d2 in QObject::activate_signal () from /usr/qt/3/lib64/libqt-mt.so.3
#12763 0x00002aaaabbc3579 in KAction::slotButtonClicked () from /usr/kde/3.5/lib/libkdeui.so.4
#12764 0x00002aaaabbc9817 in KAction::qt_invoke () from /usr/kde/3.5/lib/libkdeui.so.4
#12765 0x0000003f74c3ef68 in QObject::activate_signal () from /usr/qt/3/lib64/libqt-mt.so.3
#12766 0x00002aaaabc7162a in KToolBarButton::buttonClicked () from /usr/kde/3.5/lib/libkdeui.so.4
#12767 0x00002aaaabc717ff in KToolBarButton::mouseReleaseEvent ()

   from /usr/kde/3.5/lib/libkdeui.so.4
#12768 0x0000003f74c71179 in QWidget::event () from /usr/qt/3/lib64/libqt-mt.so.3
#12769 0x00002aaaabc70f56 in KToolBarButton::event () from /usr/kde/3.5/lib/libkdeui.so.4
#12770 0x0000003f74be63dd in QApplication::internalNotify () from /usr/qt/3/lib64/libqt-mt.so.3
#12771 0x0000003f74be690e in QApplication::notify () from /usr/qt/3/lib64/libqt-mt.so.3
#12772 0x00002aaaabfca021 in KApplication::notify () from /usr/kde/3.5/lib/libkdecore.so.4
#12773 0x0000003f74b8c075 in QETWidget::translateMouseEvent () from /usr/qt/3/lib64/libqt-mt.so.3
#12774 0x0000003f74b8ad38 in QApplication::x11ProcessEvent () from /usr/qt/3/lib64/libqt-mt.so.3
#12775 0x0000003f74b9bf6b in QEventLoop::processEvents () from /usr/qt/3/lib64/libqt-mt.so.3
#12776 0x0000003f74bfa555 in QEventLoop::enterLoop () from /usr/qt/3/lib64/libqt-mt.so.3
#12777 0x0000003f74bfa4b2 in QEventLoop::exec () from /usr/qt/3/lib64/libqt-mt.so.3
#12778 0x00002aaaaac3047a in kdemain () from /usr/kde/3.5/lib/libkdeinit_konqueror.so
#12779 0x00002aaaaae22674 in __libc_start_main () from /lib/libc.so.6
#12780 0x00000000004005ea in _start ()

Thats all.
A cross-test with KDE-3.4.89 on x86 shows no problem. So its a regression or a platform issue.

Bye

  Thorsten
Comment 1 Thiago Macieira 2005-12-26 16:43:22 UTC

*** This bug has been marked as a duplicate of 116861 ***