Bug 357548 - Gwenview crashes when I activate 100% zoom by either middle click or toolbar button
Summary: Gwenview crashes when I activate 100% zoom by either middle click or toolbar ...
Status: RESOLVED FIXED
Alias: None
Product: gwenview
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Gentoo Packages Linux
: NOR crash
Target Milestone: ---
Assignee: Gwenview Bugs
URL:
Keywords: drkonqi
: 328302 352230 356857 358862 362248 362796 366262 366341 367661 367679 369688 370250 370536 372387 372647 372746 373295 373375 373581 373599 375433 381364 382420 383172 404049 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-01-04 22:36 UTC by Matěj Laitl
Modified: 2019-02-07 18:13 UTC (History)
29 users (show)

See Also:
Latest Commit:
Version Fixed In: 16.12


Attachments
gwenview-crash-scan-012.jpg (668.51 KB, image/jpeg)
2016-01-04 22:39 UTC, Matěj Laitl
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Matěj Laitl 2016-01-04 22:36:14 UTC
Application: gwenview (15.08.3)

Qt Version: 5.5.1
Operating System: Linux 4.0.5-gentoo x86_64
Distribution: "Gentoo Base System release 2.2"

-- Information about the crash:
To reproduce:
1. Open gwenview with a jpeg image (will attach)
2. Immediately click the "100 %" zoom button, or use middle mouse button to do the same
3. Crash.

Gwenview does *not* crash when I first use the zoom slider (which itself works fine), and then use to "toggle 100% view" functionality afterwards.

This crash does *not* happen on all images, but happens every time on 2 of 3 images from one scanning batch that I'll attach.

The crash can be reproduced every time.

-- Backtrace:
Application: Gwenview (gwenview), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7ff8d727d840 (LWP 3203))]

Thread 3 (Thread 0x7ff8d5ac6700 (LWP 3204)):
#0  0x00007ff8e55723ad in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007ff8dead8ac2 in poll (__timeout=-1, __nfds=1, __fds=0x7ff8d5ac5c80) at /usr/include/bits/poll2.h:46
#2  _xcb_conn_wait (c=c@entry=0x24e18a0, cond=cond@entry=0x24e18e0, vector=vector@entry=0x0, count=count@entry=0x0) at /var/tmp/portage/x11-libs/libxcb-1.11.1/work/libxcb-1.11.1/src/xcb_conn.c:459
#3  0x00007ff8deada72f in xcb_wait_for_event (c=0x24e18a0) at /var/tmp/portage/x11-libs/libxcb-1.11.1/work/libxcb-1.11.1/src/xcb_in.c:693
#4  0x00007ff8d6fce7b9 in QXcbEventReader::run (this=0x24ebc80) at qxcbconnection.cpp:1229
#5  0x00007ff8e5be38e6 in QThreadPrivate::start (arg=0x24ebc80) at thread/qthread_unix.cpp:331
#6  0x00007ff8e0ce3324 in start_thread (arg=0x7ff8d5ac6700) at pthread_create.c:333
#7  0x00007ff8e557b1cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7ff8ccbd5700 (LWP 3205)):
#0  pthread_cond_timedwait () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:238
#1  0x00007ff8e5be3f49 in wait_relative (time=30000, this=0x29dfa90) at thread/qwaitcondition_unix.cpp:126
#2  wait (time=30000, this=0x29dfa90) at thread/qwaitcondition_unix.cpp:134
#3  QWaitCondition::wait (this=this@entry=0x29df950, mutex=mutex@entry=0x29df880, time=30000) at thread/qwaitcondition_unix.cpp:208
#4  0x00007ff8e5be04df in QThreadPoolThread::run (this=0x29df940) at thread/qthreadpool.cpp:127
#5  0x00007ff8e5be38e6 in QThreadPrivate::start (arg=0x29df940) at thread/qthread_unix.cpp:331
#6  0x00007ff8e0ce3324 in start_thread (arg=0x7ff8ccbd5700) at pthread_create.c:333
#7  0x00007ff8e557b1cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7ff8d727d840 (LWP 3203)):
[KCrash Handler]
#6  Unroll3BytesSkip1SwapSwapFirst (info=0x2a7e690, wIn=0x7ffd5bb742b0, accum=0x2cdb000 <error: Cannot access memory at address 0x2cdb000>, Stride=720803) at /var/tmp/portage/media-libs/lcms-2.6-r1/work/lcms2-2.6/src/cmspack.c:296
#7  0x00007ff8e4925b0b in PrecalculatedXFORM (p=0x2a7e690, in=<optimized out>, out=<optimized out>, Size=720803, Stride=720803) at /var/tmp/portage/media-libs/lcms-2.6-r1/work/lcms2-2.6/src/cmsxform.c:319
#8  0x00007ff8e99e65ae in Gwenview::RasterImageView::updateFromScaler (this=0x2a48480, zoomedImageLeft=676, zoomedImageTop=1447, image=...) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3/lib/documentview/rasterimageview.cpp:322
#9  0x00007ff8e5dc05d3 in call (a=0x7ffd5bb74530, r=0x2a48480, this=0x26f01b0) at ../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
#10 QMetaObject::activate (sender=sender@entry=0x2718ff0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd5bb74530) at kernel/qobject.cpp:3698
#11 0x00007ff8e5dc10b7 in QMetaObject::activate (sender=sender@entry=0x2718ff0, m=m@entry=0x7ff8e9c90500 <Gwenview::ImageScaler::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd5bb74530) at kernel/qobject.cpp:3578
#12 0x00007ff8e9a4a471 in Gwenview::ImageScaler::scaledRect (this=this@entry=0x2718ff0, _t1=676, _t2=1447, _t3=...) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3_build/lib/moc_imagescaler.cpp:135
#13 0x00007ff8e9a0856a in Gwenview::ImageScaler::scaleRect (this=this@entry=0x2718ff0, rect=...) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3/lib/imagescaler.cpp:132
#14 0x00007ff8e9a08bcf in Gwenview::ImageScaler::doScale (this=0x2718ff0) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3/lib/imagescaler.cpp:122
#15 0x00007ff8e9a08db5 in Gwenview::ImageScaler::setDestinationRegion (this=<optimized out>, region=...) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3/lib/imagescaler.cpp:102
#16 0x00007ff8e99e4b1f in setScalerRegionToVisibleRect (this=0x2a1cc90) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3/lib/documentview/rasterimageview.cpp:151
#17 Gwenview::RasterImageView::updateImageRect (this=0x2a48480, imageRect=...) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3/lib/documentview/rasterimageview.cpp:305
#18 0x00007ff8e9a4c1c9 in Gwenview::RasterImageView::qt_static_metacall (_o=0x2a48480, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3_build/lib/moc_rasterimageview.cpp:107
#19 0x00007ff8e5dc0b4e in QMetaObject::activate (sender=0x29dac60, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffd5bb74920) at kernel/qobject.cpp:3713
#20 0x00007ff8e5dc10b7 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7ff8e9c90d40 <Gwenview::Document::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffd5bb74920) at kernel/qobject.cpp:3578
#21 0x00007ff8e9a49405 in Gwenview::Document::imageRectUpdated (this=<optimized out>, _t1=...) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3_build/lib/moc_document.cpp:281
#22 0x00007ff8e5dc0b4e in QMetaObject::activate (sender=sender@entry=0x2aa06a0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd5bb74a70) at kernel/qobject.cpp:3713
#23 0x00007ff8e5dc10b7 in QMetaObject::activate (sender=sender@entry=0x2aa06a0, m=m@entry=0x7ff8e9c90d80 <Gwenview::AbstractDocumentImpl::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd5bb74a70) at kernel/qobject.cpp:3578
#24 0x00007ff8e9a490e2 in Gwenview::AbstractDocumentImpl::imageRectUpdated (this=this@entry=0x2aa06a0, _t1=...) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3_build/lib/moc_abstractdocumentimpl.cpp:177
#25 0x00007ff8e99d0d6b in Gwenview::DocumentLoadedImpl::init (this=0x2aa06a0) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3/lib/document/documentloadedimpl.cpp:66
#26 0x00007ff8e99cc0c5 in Gwenview::Document::switchToImpl (this=0x29dac60, impl=impl@entry=0x2aa06a0) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3/lib/document/document.cpp:254
#27 0x00007ff8e99cab8c in Gwenview::AbstractDocumentImpl::switchToImpl (this=this@entry=0x29de750, impl=impl@entry=0x2aa06a0) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3/lib/document/abstractdocumentimpl.cpp:57
#28 0x00007ff8e99d1d78 in Gwenview::LoadingDocumentImpl::slotImageLoaded (this=0x29de750) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3/lib/document/loadingdocumentimpl.cpp:551
#29 0x00007ff8e5dc0b4e in QMetaObject::activate (sender=0x29de938, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3713
#30 0x00007ff8e5dc10b7 in QMetaObject::activate (sender=<optimized out>, m=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3578
#31 0x00007ff8e5bdaf58 in QFutureWatcherBase::event (this=<optimized out>, event=0x7ff8c80034d0) at thread/qfuturewatcher.cpp:338
#32 0x00007ff8e6b436bc in QApplicationPrivate::notify_helper (this=this@entry=0x24d7ea0, receiver=receiver@entry=0x29de938, e=e@entry=0x7ff8c80034d0) at kernel/qapplication.cpp:3716
#33 0x00007ff8e6b48b30 in QApplication::notify (this=0x7ffd5bb75230, receiver=0x29de938, e=0x7ff8c80034d0) at kernel/qapplication.cpp:3499
#34 0x00007ff8e5d9478d in QCoreApplication::notifyInternal (this=0x7ffd5bb75230, receiver=0x29de938, event=event@entry=0x7ff8c80034d0) at kernel/qcoreapplication.cpp:965
#35 0x00007ff8e5d9774a in sendEvent (event=0x7ff8c80034d0, receiver=<optimized out>) at kernel/qcoreapplication.h:224
#36 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x24cc250) at kernel/qcoreapplication.cpp:1593
#37 0x00007ff8e5d97c48 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1451
#38 0x00007ff8e5de8843 in postEventSourceDispatch (s=0x250b950) at kernel/qeventdispatcher_glib.cpp:271
#39 0x00007ff8e07988ed in g_main_dispatch (context=0x7ff8d00016f0) at /var/tmp/portage/dev-libs/glib-2.44.1-r1/work/glib-2.44.1/glib/gmain.c:3122
#40 g_main_context_dispatch (context=context@entry=0x7ff8d00016f0) at /var/tmp/portage/dev-libs/glib-2.44.1-r1/work/glib-2.44.1/glib/gmain.c:3737
#41 0x00007ff8e0798bd0 in g_main_context_iterate (context=context@entry=0x7ff8d00016f0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /var/tmp/portage/dev-libs/glib-2.44.1-r1/work/glib-2.44.1/glib/gmain.c:3808
#42 0x00007ff8e0798c7c in g_main_context_iteration (context=0x7ff8d00016f0, may_block=1) at /var/tmp/portage/dev-libs/glib-2.44.1-r1/work/glib-2.44.1/glib/gmain.c:3869
#43 0x00007ff8e5de7ffc in QEventDispatcherGlib::processEvents (this=0x24ccbe0, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#44 0x00007ff8e5d92acb in QEventLoop::exec (this=this@entry=0x7ffd5bb75140, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#45 0x00007ff8e5d9a626 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1229
#46 0x00007ff8e65beffc in QGuiApplication::exec () at kernel/qguiapplication.cpp:1527
#47 0x00007ff8e6b3f2f5 in QApplication::exec () at kernel/qapplication.cpp:2976
#48 0x000000000043f6bd in main (argc=2, argv=<optimized out>) at /var/tmp/portage/kde-apps/gwenview-15.08.3-r1/work/gwenview-15.08.3/app/main.cpp:166

Reported using DrKonqi
Comment 1 Matěj Laitl 2016-01-04 22:39:25 UTC
Created attachment 96461 [details]
gwenview-crash-scan-012.jpg
Comment 2 michael 2016-01-09 23:28:28 UTC
I can reproduce the crash on Debian Unstable.

Just happens with some larger pictures.
Comment 3 Eugene 2016-04-19 14:50:57 UTC
Seems, I have the same crash:


Application: Gwenview (gwenview), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f0bbd80b9c0 (LWP 5258))]

Thread 3 (Thread 0x7f0bbb5b1700 (LWP 5259)):
#0  0x00007f0bcc166e8d in poll () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f0bc505bc62 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007f0bc505d8d7 in xcb_wait_for_event () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007f0bbd2dc629 in QXcbEventReader::run (this=0x16223c0) at qxcbconnection.cpp:1253
#4  0x00007f0bcc85c84e in QThreadPrivate::start (arg=0x16223c0) at thread/qthread_unix.cpp:331
#5  0x00007f0bc766e6fa in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#6  0x00007f0bcc172b5d in clone () from /lib/x86_64-linux-gnu/libc.so.6

Thread 2 (Thread 0x7f0bae116700 (LWP 5260)):
#0  0x00007f0bc76743a0 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
#1  0x00007f0bb204e213 in ?? () from /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#2  0x00007f0bb204d937 in ?? () from /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
#3  0x00007f0bc766e6fa in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#4  0x00007f0bcc172b5d in clone () from /lib/x86_64-linux-gnu/libc.so.6

Thread 1 (Thread 0x7f0bbd80b9c0 (LWP 5258)):
[KCrash Handler]
#6  Unroll3BytesSkip1SwapSwapFirst (info=0x1bc7380, wIn=0x7ffdefee29b0, accum=0x2358000 <error: Cannot access memory at address 0x2358000>, Stride=1236970) at cmspack.c:296
#7  0x00007f0bcb522bab in PrecalculatedXFORM (p=0x1bc7380, in=<optimized out>, out=<optimized out>, Size=1236970, Stride=1236970) at cmsxform.c:319
#8  0x00007f0bd0860c99 in Gwenview::RasterImageView::updateFromScaler (this=0x1badc50, zoomedImageLeft=1845, zoomedImageTop=3100, image=...) at /build/gwenview-iJ9mAT/gwenview-15.12.3/lib/documentview/rasterimageview.cpp:322
#9  0x00007f0bcca6be4f in QtPrivate::QSlotObjectBase::call (a=0x7ffdefee2c20, r=0x1badc50, this=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
#10 QMetaObject::activate (sender=sender@entry=0x1ee4080, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffdefee2c20) at kernel/qobject.cpp:3698
#11 0x00007f0bcca6c7d7 in QMetaObject::activate (sender=sender@entry=0x1ee4080, m=m@entry=0x7f0bd0b08800 <Gwenview::ImageScaler::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffdefee2c20) at kernel/qobject.cpp:3578
#12 0x00007f0bd08c4581 in Gwenview::ImageScaler::scaledRect (this=this@entry=0x1ee4080, _t1=1845, _t2=3100, _t3=...) at /build/gwenview-iJ9mAT/gwenview-15.12.3/obj-x86_64-linux-gnu/lib/moc_imagescaler.cpp:135
#13 0x00007f0bd0881947 in Gwenview::ImageScaler::scaleRect (this=this@entry=0x1ee4080, rect=...) at /build/gwenview-iJ9mAT/gwenview-15.12.3/lib/imagescaler.cpp:132
#14 0x00007f0bd08820e7 in Gwenview::ImageScaler::doScale (this=0x1ee4080) at /build/gwenview-iJ9mAT/gwenview-15.12.3/lib/imagescaler.cpp:122
#15 0x00007f0bd08821a5 in Gwenview::ImageScaler::setDestinationRegion (this=<optimized out>, region=...) at /build/gwenview-iJ9mAT/gwenview-15.12.3/lib/imagescaler.cpp:102
#16 0x00007f0bd085ef07 in Gwenview::RasterImageViewPrivate::setScalerRegionToVisibleRect (this=0x1bea320) at /build/gwenview-iJ9mAT/gwenview-15.12.3/lib/documentview/rasterimageview.cpp:151
#17 Gwenview::RasterImageView::updateImageRect (this=0x1badc50, imageRect=...) at /build/gwenview-iJ9mAT/gwenview-15.12.3/lib/documentview/rasterimageview.cpp:305
#18 0x00007f0bd08c6f39 in Gwenview::RasterImageView::qt_static_metacall (_o=_o@entry=0x1badc50, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=5, _a=_a@entry=0x7ffdefee2ff0) at /build/gwenview-iJ9mAT/gwenview-15.12.3/obj-x86_64-linux-gnu/lib/moc_rasterimageview.cpp:107
#19 0x00007f0bcca6bfca in QMetaObject::activate (sender=0x1b59b80, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffdefee2ff0) at kernel/qobject.cpp:3713
#20 0x00007f0bcca6c7d7 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7f0bd0b09040 <Gwenview::Document::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffdefee2ff0) at kernel/qobject.cpp:3578
#21 0x00007f0bd08c3515 in Gwenview::Document::imageRectUpdated (this=<optimized out>, _t1=...) at /build/gwenview-iJ9mAT/gwenview-15.12.3/obj-x86_64-linux-gnu/lib/moc_document.cpp:281
#22 0x00007f0bcca6bfca in QMetaObject::activate (sender=sender@entry=0x1e95800, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffdefee3120) at kernel/qobject.cpp:3713
#23 0x00007f0bcca6c7d7 in QMetaObject::activate (sender=sender@entry=0x1e95800, m=m@entry=0x7f0bd0b09080 <Gwenview::AbstractDocumentImpl::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffdefee3120) at kernel/qobject.cpp:3578
#24 0x00007f0bd08c31f2 in Gwenview::AbstractDocumentImpl::imageRectUpdated (this=this@entry=0x1e95800, _t1=...) at /build/gwenview-iJ9mAT/gwenview-15.12.3/obj-x86_64-linux-gnu/lib/moc_abstractdocumentimpl.cpp:177
#25 0x00007f0bd084a9bb in Gwenview::DocumentLoadedImpl::init (this=0x1e95800) at /build/gwenview-iJ9mAT/gwenview-15.12.3/lib/document/documentloadedimpl.cpp:66
#26 0x00007f0bd0845825 in Gwenview::Document::switchToImpl (this=0x1b59b80, impl=impl@entry=0x1e95800) at /build/gwenview-iJ9mAT/gwenview-15.12.3/lib/document/document.cpp:254
#27 0x00007f0bd0844afc in Gwenview::AbstractDocumentImpl::switchToImpl (this=this@entry=0x1b5a8c0, impl=impl@entry=0x1e95800) at /build/gwenview-iJ9mAT/gwenview-15.12.3/lib/document/abstractdocumentimpl.cpp:57
#28 0x00007f0bd084ba18 in Gwenview::LoadingDocumentImpl::slotImageLoaded (this=0x1b5a8c0) at /build/gwenview-iJ9mAT/gwenview-15.12.3/lib/document/loadingdocumentimpl.cpp:551
#29 0x00007f0bcca6bfca in QMetaObject::activate (sender=0x1b5af98, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3713
#30 0x00007f0bcc85415e in QFutureWatcherBase::event (this=<optimized out>, event=0x7f0ba0003780) at thread/qfuturewatcher.cpp:338
#31 0x00007f0bcdd0005c in QApplicationPrivate::notify_helper (this=this@entry=0x1603250, receiver=receiver@entry=0x1b5af98, e=e@entry=0x7f0ba0003780) at kernel/qapplication.cpp:3716
#32 0x00007f0bcdd05516 in QApplication::notify (this=0x7ffdefee38f0, receiver=0x1b5af98, e=0x7f0ba0003780) at kernel/qapplication.cpp:3499
#33 0x00007f0bcca3d62b in QCoreApplication::notifyInternal (this=0x7ffdefee38f0, receiver=0x1b5af98, event=event@entry=0x7f0ba0003780) at kernel/qcoreapplication.cpp:965
#34 0x00007f0bcca3fa26 in QCoreApplication::sendEvent (event=0x7f0ba0003780, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:224
#35 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x15f6f20) at kernel/qcoreapplication.cpp:1593
#36 0x00007f0bcca3ff08 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1451
#37 0x00007f0bcca93673 in postEventSourceDispatch (s=0x1652cd0) at kernel/qeventdispatcher_glib.cpp:271
#38 0x00007f0bc714d127 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#39 0x00007f0bc714d380 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#40 0x00007f0bc714d42c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#41 0x00007f0bcca93a7f in QEventDispatcherGlib::processEvents (this=0x1652cb0, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#42 0x00007f0bcca3adea in QEventLoop::exec (this=this@entry=0x7ffdefee37e0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#43 0x00007f0bcca42e8c in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1229
#44 0x00007f0bccd76c3c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1542
#45 0x00007f0bcdcfc495 in QApplication::exec () at kernel/qapplication.cpp:2976
#46 0x000000000044ba70 in main (argc=2, argv=<optimized out>) at /build/gwenview-iJ9mAT/gwenview-15.12.3/app/main.cpp:166
Comment 4 Christoph Feck 2016-05-11 00:08:17 UTC
*** Bug 328302 has been marked as a duplicate of this bug. ***
Comment 5 Christoph Feck 2016-05-11 00:09:14 UTC
*** Bug 352230 has been marked as a duplicate of this bug. ***
Comment 6 Christoph Feck 2016-05-11 00:09:45 UTC
*** Bug 356857 has been marked as a duplicate of this bug. ***
Comment 7 Christoph Feck 2016-05-11 00:10:35 UTC
*** Bug 358862 has been marked as a duplicate of this bug. ***
Comment 8 Christoph Feck 2016-05-11 00:11:00 UTC
*** Bug 362248 has been marked as a duplicate of this bug. ***
Comment 9 Christoph Feck 2016-05-11 00:11:39 UTC
*** Bug 362796 has been marked as a duplicate of this bug. ***
Comment 10 sir7empest 2016-05-17 19:37:13 UTC
Having the same crash and it seems I'm not the only one with the amount of duplicates being marked. Here's the system info:

root@localhost:~> uname -a
Linux Polaris 4.5.3-1-default #1 SMP PREEMPT Thu May 5 05:03:39 UTC 2016 (d29747f) x86_64 x86_64 x86_64 GNU/Linux

root@localhost:~> lsb_release -a
LSB Version:    core-2.0-noarch:core-3.2-noarch:core-4.0-noarch:core-2.0-x86_64:core-3.2-x86_64:core-4.0-x86_64:desktop-4.0-amd64:desktop-4.0-noarch:graphics-2.0-amd64:graphics-2.0-noarch:graphics-3.2-amd64:graphics-3.2-noarch:graphics-4.0-amd64:graphics-4.0-noarch
Distributor ID: openSUSE
Description:    openSUSE Tumbleweed (20160422) (x86_64)
Release:        20160422
Codename:       Tumbleweed

Qt version: 5.5.1
Gwenview version: 15.12.3

Backtrace:

Application: Gwenview (gwenview), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f6a0c689980 (LWP 4597))]

Thread 2 (Thread 0x7f69f52b8700 (LWP 4598)):
#0  0x00007f6a070f707d in poll () from /lib64/libc.so.6
#1  0x00007f69ff1813f2 in ?? () from /usr/lib64/libxcb.so.1
#2  0x00007f69ff182fc7 in xcb_wait_for_event () from /usr/lib64/libxcb.so.1
#3  0x00007f69f6fe1dd9 in ?? () from /usr/lib64/libQt5XcbQpa.so.5
#4  0x00007f6a077ea91f in QThreadPrivate::start (arg=0x251bdb0) at thread/qthread_unix.cpp:331
#5  0x00007f6a015e1424 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f6a070ffadd in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f6a0c689980 (LWP 4597)):
[KCrash Handler]
#6  Unroll3BytesSkip1SwapSwapFirst (info=0x2af0f50, wIn=0x7ffdab24ff40, accum=0x30e7000 <error: Cannot access memory at address 0x30e7000>, Stride=1529275) at cmspack.c:296
#7  0x00007f6a05f7311b in PrecalculatedXFORM (p=0x2af0f50, in=<optimized out>, out=<optimized out>, Size=1529275, Stride=1529275) at cmsxform.c:319
#8  0x00007f6a0bda7658 in Gwenview::RasterImageView::updateFromScaler (this=0x2b4c910, zoomedImageLeft=-237, zoomedImageTop=-39, image=...) at /usr/src/debug/gwenview-15.12.3/lib/documentview/rasterimageview.cpp:322
#9  0x00007f6a079e8cc7 in QtPrivate::QSlotObjectBase::call (a=0x7ffdab250180, r=0x2b4c910, this=<optimized out>) at ../../src/corelib/kernel/qobject_impl.h:124
#10 QMetaObject::activate (sender=sender@entry=0x2728620, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffdab250180) at kernel/qobject.cpp:3698
#11 0x00007f6a079e9637 in QMetaObject::activate (sender=sender@entry=0x2728620, m=m@entry=0x7f6a0c04b7e0 <Gwenview::ImageScaler::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffdab250180) at kernel/qobject.cpp:3578
#12 0x00007f6a0be07231 in Gwenview::ImageScaler::scaledRect (this=this@entry=0x2728620, _t1=-237, _t2=-39, _t3=...) at /usr/src/debug/gwenview-15.12.3/build/lib/moc_imagescaler.cpp:135
#13 0x00007f6a0bdc7304 in Gwenview::ImageScaler::scaleRect (this=this@entry=0x2728620, rect=...) at /usr/src/debug/gwenview-15.12.3/lib/imagescaler.cpp:132
#14 0x00007f6a0bdc7a4f in Gwenview::ImageScaler::doScale (this=0x2728620) at /usr/src/debug/gwenview-15.12.3/lib/imagescaler.cpp:122
#15 0x00007f6a0bdc7b05 in Gwenview::ImageScaler::setDestinationRegion (this=<optimized out>, region=...) at /usr/src/debug/gwenview-15.12.3/lib/imagescaler.cpp:102
#16 0x00007f6a0bda6274 in Gwenview::RasterImageViewPrivate::setScalerRegionToVisibleRect (this=0x2b5b140) at /usr/src/debug/gwenview-15.12.3/lib/documentview/rasterimageview.cpp:151
#17 Gwenview::RasterImageView::updateBuffer (this=this@entry=0x2b4c910, region=...) at /usr/src/debug/gwenview-15.12.3/lib/documentview/rasterimageview.cpp:443
#18 0x00007f6a0be0963b in Gwenview::RasterImageView::qt_static_metacall (_o=_o@entry=0x2b4c910, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=7, _a=_a@entry=0x7ffdab250450) at /usr/src/debug/gwenview-15.12.3/build/lib/moc_rasterimageview.cpp:109
#19 0x00007f6a079e8e3a in QMetaObject::activate (sender=sender@entry=0x2f40870, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3713
#20 0x00007f6a079e9637 in QMetaObject::activate (sender=sender@entry=0x2f40870, m=m@entry=0x7f6a07dff8c0 <QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3578
#21 0x00007f6a07a64420 in QTimer::timeout (this=this@entry=0x2f40870) at .moc/moc_qtimer.cpp:197
#22 0x00007f6a079f4f98 in QTimer::timerEvent (this=0x2f40870, e=<optimized out>) at kernel/qtimer.cpp:247
#23 0x00007f6a079e9bdb in QObject::event (this=0x2f40870, e=<optimized out>) at kernel/qobject.cpp:1261
#24 0x00007f6a0906887c in QApplicationPrivate::notify_helper (this=this@entry=0x2501b70, receiver=receiver@entry=0x2f40870, e=e@entry=0x7ffdab2507c0) at kernel/qapplication.cpp:3716
#25 0x00007f6a0906d986 in QApplication::notify (this=0x7ffdab250ae0, receiver=0x2f40870, e=0x7ffdab2507c0) at kernel/qapplication.cpp:3499
#26 0x00007f6a079bbbf3 in QCoreApplication::notifyInternal (this=0x7ffdab250ae0, receiver=0x2f40870, event=event@entry=0x7ffdab2507c0) at kernel/qcoreapplication.cpp:965
#27 0x00007f6a07a0e29d in QCoreApplication::sendEvent (event=0x7ffdab2507c0, receiver=<optimized out>) at ../../src/corelib/kernel/qcoreapplication.h:224
#28 QTimerInfoList::activateTimers (this=0x2551590) at kernel/qtimerinfo_unix.cpp:637
#29 0x00007f6a07a0e7b1 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:177
#30 0x00007f6a010c2197 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#31 0x00007f6a010c23c8 in ?? () from /usr/lib64/libglib-2.0.so.0
#32 0x00007f6a010c246c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#33 0x00007f6a07a0f3ef in QEventDispatcherGlib::processEvents (this=0x2556900, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#34 0x00007f6a079b953a in QEventLoop::exec (this=this@entry=0x7ffdab2509e0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#35 0x00007f6a079c11fd in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1229
#36 0x0000000000450630 in main (argc=2, argv=<optimized out>) at /usr/src/debug/gwenview-15.12.3/app/main.cpp:166
Comment 11 Denis Kurz 2016-08-24 09:31:53 UTC
*** Bug 367679 has been marked as a duplicate of this bug. ***
Comment 12 Denis Kurz 2016-08-24 09:32:04 UTC
*** Bug 367661 has been marked as a duplicate of this bug. ***
Comment 13 Denis Kurz 2016-08-24 09:32:31 UTC
*** Bug 366262 has been marked as a duplicate of this bug. ***
Comment 14 Christoph Feck 2016-10-07 21:55:16 UTC
*** Bug 366341 has been marked as a duplicate of this bug. ***
Comment 15 Christoph Feck 2016-10-07 21:55:49 UTC
*** Bug 370250 has been marked as a duplicate of this bug. ***
Comment 16 Christoph Feck 2016-10-07 21:56:30 UTC
*** Bug 369688 has been marked as a duplicate of this bug. ***
Comment 17 Christoph Feck 2016-10-14 03:56:28 UTC
*** Bug 370536 has been marked as a duplicate of this bug. ***
Comment 18 Christoph Feck 2016-10-14 04:01:10 UTC
It seems to happen on grayscale images. Probably the code that passes the image data to the LCMS library does not correctly handle QImage::Format_Grayscale8.

Did anybody see this bug also with color images?
Comment 19 Christoph Feck 2016-10-14 04:55:01 UTC
This could fix it. Feedback appreciated.

diff --git a/lib/documentview/rasterimageview.cpp b/lib/documentview/rasterimageview.cpp
index 2131c07..02e18a6 100644
--- a/lib/documentview/rasterimageview.cpp
+++ b/lib/documentview/rasterimageview.cpp
@@ -314,9 +314,7 @@ void RasterImageView::slotDocumentIsAnimatedUpdated()
 void RasterImageView::updateFromScaler(int zoomedImageLeft, int zoomedImageTop, const QImage& image)
 {
     if (d->mApplyDisplayTransform) {
-        if (!d->mDisplayTransform) {
-            d->updateDisplayTransform(image.format());
-        }
+        d->updateDisplayTransform(image.format());
         if (d->mDisplayTransform) {
             quint8 *bytes = const_cast<quint8*>(image.bits());
             cmsDoTransform(d->mDisplayTransform, bytes, bytes, image.width() * image.height());
Comment 20 Greg Lepore 2016-10-14 11:30:47 UTC
I get the crash on full color images, I've never tried grayscale images. I get the crash on almost 100% percent of images.

Version 16.04.3
Frameworks 5.26.0
Qt 5.6.1
Comment 21 Christoph Feck 2016-11-15 10:19:25 UTC
*** Bug 372387 has been marked as a duplicate of this bug. ***
Comment 22 Christoph Feck 2016-11-15 10:21:26 UTC
The only other idea I have is that it happens when switching between images without alpha channel (RGB, mostly JPEG) and images with alpha channel (RGBA, usually PNG).
Comment 23 Christoph Feck 2016-11-21 21:38:27 UTC
*** Bug 372647 has been marked as a duplicate of this bug. ***
Comment 24 Christoph Feck 2016-11-21 21:39:46 UTC
Can someone please test patch from comment #19? I do not get a crash because I have no color management installed.
Comment 25 Christoph Feck 2016-11-21 21:40:39 UTC
*** Bug 372746 has been marked as a duplicate of this bug. ***
Comment 26 Christoph Feck 2016-12-06 12:35:40 UTC
*** Bug 373295 has been marked as a duplicate of this bug. ***
Comment 27 eseifert 2016-12-06 14:15:04 UTC
The patch from comment #19 solves the issue for me.
Comment 28 Christoph Feck 2016-12-06 15:25:24 UTC
Git commit 8f6d726fce8fae49991d8f4c9062cbedba70e58a by Christoph Feck.
Committed on 06/12/2016 at 15:22.
Pushed by cfeck into branch 'Applications/16.12'.

Fix crash when updating the scaler

The color correction transform needs to be updated even if it
was already created, because a change in image depth or format
may require an updated transform.
FIXED-IN: 16.12

M  +1    -3    lib/documentview/rasterimageview.cpp

https://commits.kde.org/gwenview/8f6d726fce8fae49991d8f4c9062cbedba70e58a
Comment 29 Christoph Feck 2016-12-12 23:35:50 UTC
*** Bug 373375 has been marked as a duplicate of this bug. ***
Comment 30 Christoph Feck 2016-12-12 23:36:28 UTC
*** Bug 373581 has been marked as a duplicate of this bug. ***
Comment 31 Christoph Feck 2016-12-13 02:35:53 UTC
*** Bug 373599 has been marked as a duplicate of this bug. ***
Comment 32 Christoph Feck 2017-01-25 02:46:27 UTC
*** Bug 375433 has been marked as a duplicate of this bug. ***
Comment 33 Christoph Feck 2017-06-20 01:06:42 UTC
*** Bug 381364 has been marked as a duplicate of this bug. ***
Comment 34 Christoph Feck 2017-07-17 07:20:42 UTC
*** Bug 382420 has been marked as a duplicate of this bug. ***
Comment 35 Christoph Feck 2017-08-06 02:28:56 UTC
*** Bug 383172 has been marked as a duplicate of this bug. ***
Comment 36 Christoph Feck 2019-02-07 18:13:50 UTC
*** Bug 404049 has been marked as a duplicate of this bug. ***