Bug 287628

Summary: Crash when rotating images
Product: gwenview Reporter: Iain Scurrah <iscurrah>
Component: generalAssignee: Gwenview Bugs <gwenview-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: crash CC: boboudrescu, myriam
Priority: NOR    
Version: 2.7   
Target Milestone: ---   
Platform: Ubuntu Packages   
OS: Linux   
Latest Commit: Version Fixed In:

Description Iain Scurrah 2011-11-26 18:19:34 UTC
Application: gwenview (2.7.2)
KDE Platform Version: 4.7.2 (4.7.2)
Qt Version: 4.7.4
Operating System: Linux 3.0.0-13-generic i686
Distribution: Ubuntu 11.10

-- Information about the crash:
Gwenview was generating thumbnails for a folder full of images. Whilst doing so, I was using the mouseover & rotate buttons to orientate the images. This repeatedly caused a crash.

The crash can be reproduced some of the time.

-- Backtrace:
Application: Gwenview (gwenview), signal: Segmentation fault
[Current thread is 1 (Thread 0xb784ea50 (LWP 16650))]

Thread 6 (Thread 0xb6be1b70 (LWP 16651)):
#0  0x0091e416 in __kernel_vsyscall ()
#1  0x0085e40e in poll () from /lib/i386-linux-gnu/libc.so.6
#2  0x0694434b in g_poll () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0x06935896 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0x06935c2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0x00ad7b37 in QEventDispatcherGlib::processEvents (this=0x94fc220, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#6  0x00aa81dd in QEventLoop::processEvents (this=0xb6be12b0, flags=...) at kernel/qeventloop.cpp:149
#7  0x00aa8421 in QEventLoop::exec (this=0xb6be12b0, flags=...) at kernel/qeventloop.cpp:201
#8  0x009ab90b in QThread::exec (this=0x94ef628) at thread/qthread.cpp:498
#9  0x00a88e2d in QInotifyFileSystemWatcherEngine::run (this=0x94ef628) at io/qfilesystemwatcher_inotify.cpp:248
#10 0x009ae7b3 in QThreadPrivate::start (arg=0x94ef628) at thread/qthread_unix.cpp:331
#11 0x00c68d31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#12 0x0086d0ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 5 (Thread 0xb4ca7b70 (LWP 16656)):
#0  0x00776d10 in clock_gettime () from /lib/i386-linux-gnu/librt.so.1
#1  0x00a057d5 in do_gettime (frac=0xb4ca7020, sec=0xb4ca7018) at tools/qelapsedtimer_unix.cpp:123
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#3  0x00ad84b6 in QTimerInfoList::updateCurrentTime (this=0x9a30cb4) at kernel/qeventdispatcher_unix.cpp:339
#4  0x00ad880a in QTimerInfoList::timerWait (this=0x9a30cb4, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#5  0x00ad7053 in timerSourcePrepareHelper (src=<optimized out>, timeout=0xb4ca712c) at kernel/qeventdispatcher_glib.cpp:136
#6  0x00ad70ed in timerSourcePrepare (source=0x9a30c80, timeout=<optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0x0693488c in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#8  0x06935637 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#9  0x06935c2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#10 0x00ad7b37 in QEventDispatcherGlib::processEvents (this=0x98d5640, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#11 0x00aa81dd in QEventLoop::processEvents (this=0xb4ca72b0, flags=...) at kernel/qeventloop.cpp:149
#12 0x00aa8421 in QEventLoop::exec (this=0xb4ca72b0, flags=...) at kernel/qeventloop.cpp:201
#13 0x009ab90b in QThread::exec (this=0x98b0760) at thread/qthread.cpp:498
#14 0x00a88e2d in QInotifyFileSystemWatcherEngine::run (this=0x98b0760) at io/qfilesystemwatcher_inotify.cpp:248
#15 0x009ae7b3 in QThreadPrivate::start (arg=0x98b0760) at thread/qthread_unix.cpp:331
#16 0x00c68d31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#17 0x0086d0ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 4 (Thread 0xb44a6b70 (LWP 16717)):
#0  0x0091e416 in __kernel_vsyscall ()
#1  0x00c6ca5c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0x0087acfc in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0x009aecc0 in wait (time=4294967295, this=0xa2b4478) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0xa2b3c04, mutex=0xa2b3c00, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x02c60a7a in KIPIPlugins::LoadRawThumbThread::run() () from /usr/lib/libkipiplugins.so.2
#6  0x009ae7b3 in QThreadPrivate::start (arg=0x9acaae8) at thread/qthread_unix.cpp:331
#7  0x00c68d31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#8  0x0086d0ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 3 (Thread 0xadb81b70 (LWP 16725)):
#0  0x0091e416 in __kernel_vsyscall ()
#1  0x00c6ca5c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0x0087acfc in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0x009aecc0 in wait (time=4294967295, this=0xa499238) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0xa499060, mutex=0xa49905c, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x0770effc in ?? () from /usr/lib/kde4/kipiplugin_rawconverter.so
#6  0x009ae7b3 in QThreadPrivate::start (arg=0xa4985c0) at thread/qthread_unix.cpp:331
#7  0x00c68d31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#8  0x0086d0ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 2 (Thread 0xa875bb70 (LWP 17577)):
#0  0x0091e416 in __kernel_vsyscall ()
#1  0x00c6ca5c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0x0087acfc in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0x009aecc0 in wait (time=4294967295, this=0xc7f53e8) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0xb8285bc, mutex=0xb8285b8, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x00d44dd7 in Gwenview::ThumbnailThread::run (this=0xb828584) at ../../lib/thumbnailloadjob.cpp:193
#6  0x009ae7b3 in QThreadPrivate::start (arg=0xb828584) at thread/qthread_unix.cpp:331
#7  0x00c68d31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#8  0x0086d0ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 1 (Thread 0xb784ea50 (LWP 16650)):
[KCrash Handler]
#7  0x0415c5fd in qt_scale_image_32bit<Blend_RGB32_on_RGB32_NoAlpha> (destPixels=0xa34c9008 "\351\207G\377\346\211D\377\344\213A\377\350\215B\377\351\214A\377\347\214A\377\347\214A\377\346\212=\377\347\214A\377\353\217H\377\347\213D\377\344\212C\377\350\214C\377\347\212?\377\350\211?\377\351\215D\377\347\222D\377\343\216@\377\350\221A\377\347\222B\377\341\225C\377\336\225E\377\343\226G\377\342\220B\377\347\225H\377\342\216F\377\343\216F\377\354\224M\377\343\216H\377\342\221M\377\335\215F\377\343\220E\377\345\216D\377\352\216E\377\352\214C\377\344\215C\377\350\223I\377\350\214C\377\352\212D\377\347\213D\377\347\217H\377\345\213D\377\346\215C\377\343\214B\377\346\216B\377\344\210?\377\345\207>\377\347\215F\377\343\213E\377\350\215H\377"..., dbpl=7296, srcPixels=0x9ff76008 <Address 0x9ff76008 out of bounds>, sbpl=14592, targetRect=..., srcRect=..., clip=..., blender=...) at painting/qblendfunctions_p.h:244
#8  0x04157b51 in qt_scale_image_rgb32_on_rgb32 (destPixels=0xa34c9008 "\351\207G\377\346\211D\377\344\213A\377\350\215B\377\351\214A\377\347\214A\377\347\214A\377\346\212=\377\347\214A\377\353\217H\377\347\213D\377\344\212C\377\350\214C\377\347\212?\377\350\211?\377\351\215D\377\347\222D\377\343\216@\377\350\221A\377\347\222B\377\341\225C\377\336\225E\377\343\226G\377\342\220B\377\347\225H\377\342\216F\377\343\216F\377\354\224M\377\343\216H\377\342\221M\377\335\215F\377\343\220E\377\345\216D\377\352\216E\377\352\214C\377\344\215C\377\350\223I\377\350\214C\377\352\212D\377\347\213D\377\347\217H\377\345\213D\377\346\215C\377\343\214B\377\346\216B\377\344\210?\377\345\207>\377\347\215F\377\343\213E\377\350\215H\377"..., dbpl=7296, srcPixels=0x9ff76008 <Address 0x9ff76008 out of bounds>, sbpl=14592, targetRect=..., sourceRect=..., clip=..., const_alpha=256) at painting/qblendfunctions.cpp:630
#9  0x0422a35b in QRasterPaintEngine::drawImage (this=0xc21e208, r=..., img=..., sr=...) at painting/qpaintengine_raster.cpp:2709
#10 0x042278cc in QRasterPaintEngine::drawImage (this=0xc21e208, p=..., img=...) at painting/qpaintengine_raster.cpp:2503
#11 0x041ad0f4 in QPainter::drawImage (this=0xbf865288, p=..., image=...) at painting/qpainter.cpp:5564
#12 0x04116c02 in drawImage (image=<optimized out>, p=<optimized out>, this=<optimized out>) at ../../include/QtGui/../../src/gui/painting/qpainter.h:918
#13 QImage::transformed (this=0xc221404, matrix=..., mode=Qt::FastTransformation) at image/qimage.cpp:6584
#14 0x04117e53 in QImage::scaled (this=0xc221404, s=..., aspectMode=Qt::KeepAspectRatio, mode=Qt::FastTransformation) at image/qimage.cpp:4390
#15 0x00d01831 in Gwenview::Document::prepareDownSampledImageForZoom (this=0xc1f9ff0, zoom=0.29468201754385964) at ../../lib/document/document.cpp:378
#16 0x08093e91 in doPreload (this=0x9419ed8) at ../../app/preloader.cpp:91
#17 Gwenview::Preloader::doPreload (this=0x9419ed8) at ../../app/preloader.cpp:78
#18 0x08093ff9 in Gwenview::Preloader::preload (this=0x9419ed8, url=..., size=...) at ../../app/preloader.cpp:73
#19 0x0808eb0a in Gwenview::MainWindow::preloadNextUrl (this=0x9479ad0) at ../../app/mainwindow.cpp:1482
#20 0x0808fd7f in Gwenview::MainWindow::qt_metacall (this=0x9479ad0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbf865684) at ./mainwindow.moc:164
#21 0x00aafb7d in metacall (argv=0xbf865684, idx=80, cl=QMetaObject::InvokeMetaMethod, object=0x9479ad0) at kernel/qmetaobject.cpp:237
#22 QMetaObject::metacall (object=0x9479ad0, cl=QMetaObject::InvokeMetaMethod, idx=80, argv=0xbf865684) at kernel/qmetaobject.cpp:232
#23 0x00abea6a in QMetaObject::activate (sender=0xa0eb430, m=0xbdf238, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3278
#24 0x00ac6375 in QSingleShotTimer::timeout (this=0xa0eb430) at .moc/release-shared/qtimer.moc:82
#25 0x00ac642c in QSingleShotTimer::timerEvent (this=0xa0eb430) at kernel/qtimer.cpp:308
#26 0x00ac1994 in QObject::event (this=0xa0eb430, e=0xbf865a7c) at kernel/qobject.cpp:1181
#27 0x0403fd54 in notify_helper (e=0xbf865a7c, receiver=0xa0eb430, this=0x93b8218) at kernel/qapplication.cpp:4486
#28 QApplicationPrivate::notify_helper (this=0x93b8218, receiver=0xa0eb430, e=0xbf865a7c) at kernel/qapplication.cpp:4458
#29 0x04045103 in QApplication::notify (this=0xbf865a7c, receiver=0xa0eb430, e=0xbf865a7c) at kernel/qapplication.cpp:3886
#30 0x011c5681 in KApplication::notify (this=0xbf865da8, receiver=0xa0eb430, event=0xbf865a7c) at ../../kdeui/kernel/kapplication.cpp:311
#31 0x00aa919e in QCoreApplication::notifyInternal (this=0xbf865da8, receiver=0xa0eb430, event=0xbf865a7c) at kernel/qcoreapplication.cpp:787
#32 0x00ad9c10 in sendEvent (event=0xbf865a7c, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#33 QTimerInfoList::activateTimers (this=0x93ba27c) at kernel/qeventdispatcher_unix.cpp:603
#34 0x00ad7122 in timerSourceDispatch (source=0x93ba248) at kernel/qeventdispatcher_glib.cpp:184
#35 0x0693525f in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#36 0x06935990 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#37 0x06935c2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#38 0x00ad7ada in QEventDispatcherGlib::processEvents (this=0x939c9d0, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#39 0x040f7e3a in QGuiEventDispatcherGlib::processEvents (this=0x939c9d0, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#40 0x00aa81dd in QEventLoop::processEvents (this=0xbf865cf4, flags=...) at kernel/qeventloop.cpp:149
#41 0x00aa8421 in QEventLoop::exec (this=0xbf865cf4, flags=...) at kernel/qeventloop.cpp:201
#42 0x00aad19d in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#43 0x0403d8f4 in QApplication::exec () at kernel/qapplication.cpp:3760
#44 0x08063c7d in main (argc=) at ../../app/main.cpp:139

This bug may be a duplicate of or related to bug 282235.

Possible duplicates by query: bug 282235.

Reported using DrKonqi
Comment 1 Bogdan Udrescu 2011-11-27 13:45:02 UTC
duplicate of bug 282235
Comment 2 Myriam Schweingruber 2011-12-01 22:00:33 UTC
Thank you for triaging :)

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