https://bugs.kde.org/show_bug.cgi?id=445505

            Bug ID: 445505
           Summary: SIGSEGV in QImage::copy when rotating an jpg image CCW
           Product: gwenview
           Version: 21.08.3
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: gwenview-bugs-n...@kde.org
          Reporter: pos...@posteo.eu
  Target Milestone: ---

Created attachment 143557
  --> https://bugs.kde.org/attachment.cgi?id=143557&action=edit
coredumpctl debug: thread apply all bt

SUMMARY

```
#0  __pthread_kill_implementation (threadid=<optimized out>,
signo=signo@entry=11, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1  0x00007ff567f088e3 in __pthread_kill_internal (signo=11,
threadid=<optimized out>) at pthread_kill.c:78
#2  0x00007ff567ebb6f6 in __GI_raise (sig=11) at ../sysdeps/posix/raise.c:26
#3  0x00007ff566953d66 in KCrash::defaultCrashHandler (sig=11) at
/usr/src/debug/kcrash-5.87.0-1.1.x86_64/src/kcrash.cpp:620
#4  <signal handler called>
#5  __memmove_avx_unaligned_erms () at
../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:348
#6  0x00007ff568c88752 in memcpy (__len=<optimized out>, __src=0x7ff5341c7a10,
__dest=<optimized out>) at /usr/include/bits/string_fortified.h:29
#7  QImage::copy (this=0x55fad334a8b0, r=...) at image/qimage.cpp:1239
#8  0x00007ff56a1f17da in Gwenview::RasterImageItem::paint
(this=0x55fad36aa5e0, painter=0x7ffc05a73520) at
/usr/src/debug/gwenview5-21.08.3-1.1.x86_64/lib/documentview/rasterimageitem.cpp:106
#9  0x00007ff5696ce24f in QGraphicsScenePrivate::draw
(this=this@entry=0x55fad302c4f0, item=item@entry=0x55fad36aa5e0,
painter=painter@entry=0x7ffc05a73520, viewTransform=viewTransform@entry=0x0,
transformPtr=<optimized out>, exposedRegion=exposedRegion@entry=0x55fad340ac30,
widget=<optimized out>, opacity=opacity@entry=1, effectTransform=<optimized
out>, wasDirtyParentSceneTransform=<optimized out>, drawItem=<optimized out>)
at graphicsview/qgraphicsscene.cpp:4981
#10 0x00007ff5696cf213 in QGraphicsScenePrivate::drawSubtreeRecursive
(this=this@entry=0x55fad302c4f0, item=0x55fad36aa5e0,
painter=painter@entry=0x7ffc05a73520, viewTransform=viewTransform@entry=0x0,
exposedRegion=exposedRegion@entry=0x55fad340ac30, widget=<optimized out>,
widget@entry=0x55fad3326280, parentOpacity=parentOpacity@entry=1,
effectTransform=0x0) at graphicsview/qgraphicsscene.cpp:4873
#11 0x00007ff5696ce3ab in QGraphicsScenePrivate::draw
(this=this@entry=0x55fad302c4f0, item=item@entry=0x55fad32a2b80,
painter=painter@entry=0x7ffc05a73520, viewTransform=viewTransform@entry=0x0,
transformPtr=<optimized out>, exposedRegion=exposedRegion@entry=0x55fad340ac30,
widget=<optimized out>, opacity=opacity@entry=1, effectTransform=<optimized
out>, wasDirtyParentSceneTransform=<optimized out>, drawItem=<optimized out>)
at graphicsview/qgraphicsscene.cpp:5013
#12 0x00007ff5696cf213 in QGraphicsScenePrivate::drawSubtreeRecursive
(this=this@entry=0x55fad302c4f0, item=0x55fad32a2b80,
painter=painter@entry=0x7ffc05a73520, viewTransform=viewTransform@entry=0x0,
exposedRegion=exposedRegion@entry=0x55fad340ac30, widget=<optimized out>,
widget@entry=0x55fad3326280, parentOpacity=parentOpacity@entry=1,
effectTransform=0x0) at graphicsview/qgraphicsscene.cpp:4873
#13 0x00007ff5696ce3ab in QGraphicsScenePrivate::draw (this=0x55fad302c4f0,
item=<optimized out>, painter=0x7ffc05a73520, viewTransform=0x0,
transformPtr=<optimized out>, exposedRegion=0x55fad340ac30, widget=<optimized
out>, opacity=<optimized out>, effectTransform=<optimized out>,
wasDirtyParentSceneTransform=<optimized out>, drawItem=<optimized out>) at
graphicsview/qgraphicsscene.cpp:5013
#14 0x00007ff569691a11 in QGraphicsItemEffectSourcePrivate::draw
(this=0x55fad30fd970, painter=0x7ffc05a73520) at
graphicsview/qgraphicsitem.cpp:11328
#15 0x00007ff56973a096 in QGraphicsEffectSource::draw (this=0x55fad316b410,
painter=0x7ffc05a73520) at effects/qgraphicseffect_p.h:90
#16 0x00007ff5696cf007 in QGraphicsScenePrivate::drawSubtreeRecursive
(this=this@entry=0x55fad302c4f0, item=0x55fad3170c20,
painter=painter@entry=0x7ffc05a73520, viewTransform=viewTransform@entry=0x0,
exposedRegion=exposedRegion@entry=0x55fad340ac30, widget=<optimized out>,
widget@entry=0x55fad3326280, parentOpacity=parentOpacity@entry=1,
effectTransform=0x0) at graphicsview/qgraphicsscene.cpp:4867
#17 0x00007ff5696cf88a in QGraphicsScenePrivate::drawItems
(this=this@entry=0x55fad302c4f0, painter=painter@entry=0x7ffc05a73520,
viewTransform=viewTransform@entry=0x0,
exposedRegion=exposedRegion@entry=0x55fad340ac30, widget=0x55fad3326280) at
graphicsview/qgraphicsscene.cpp:4735
#18 0x00007ff5696f3f0f in QGraphicsView::paintEvent (this=<optimized out>,
event=<optimized out>) at
../../include/QtWidgets/../../src/widgets/graphicsview/qgraphicsscene.h:307
#19 0x00007ff5693cf76e in QWidget::event (this=this@entry=0x55fad33e8e70,
event=event@entry=0x7ffc05a738e0) at kernel/qwidget.cpp:9020
#20 0x00007ff56947c02e in QFrame::event (this=0x55fad33e8e70, e=0x7ffc05a738e0)
at widgets/qframe.cpp:550
#21 0x00007ff568576762 in
QCoreApplicationPrivate::sendThroughObjectEventFilters (event=<optimized out>,
receiver=<optimized out>) at kernel/qcoreapplication.cpp:1190
#22 QCoreApplicationPrivate::sendThroughObjectEventFilters
(receiver=receiver@entry=0x55fad3326280, event=event@entry=0x7ffc05a738e0) at
kernel/qcoreapplication.cpp:1179
#23 0x00007ff56938da6e in QApplicationPrivate::notify_helper (this=<optimized
out>, receiver=0x55fad3326280, e=0x7ffc05a738e0) at
kernel/qapplication.cpp:3626
#24 0x00007ff5685769fa in QCoreApplication::notifyInternal2
(receiver=0x55fad3326280, event=0x7ffc05a738e0) at
kernel/qcoreapplication.cpp:1064
#25 0x00007ff5693c7776 in QWidgetPrivate::sendPaintEvent
(this=this@entry=0x55fad3270010, toBePainted=...) at kernel/qwidget.cpp:5467
#26 0x00007ff5693c7fa2 in QWidgetPrivate::drawWidget
(this=this@entry=0x55fad3270010, pdev=0x55fad3d106c0, rgn=..., offset=...,
flags=flags@entry=..., sharedPainter=sharedPainter@entry=0x0,
repaintManager=<optimized out>) at kernel/qwidget.cpp:5417
#27 0x00007ff56939ea72 in QWidgetRepaintManager::paintAndFlush (this=<optimized
out>) at kernel/qwidgetrepaintmanager.cpp:1003
#28 0x00007ff5693cfebd in QWidget::event (this=0x55fad2f1e630,
event=0x55fad7d0f630) at kernel/qwidget.cpp:8965
#29 0x00007ff569bb4b89 in KXmlGuiWindow::event (this=0x55fad2f1e630,
ev=0x55fad7d0f630) at
/usr/src/debug/kxmlgui-5.87.0-1.1.x86_64/src/kxmlguiwindow.cpp:219
#30 0x00007ff56938da7f in QApplicationPrivate::notify_helper (this=<optimized
out>, receiver=0x55fad2f1e630, e=0x55fad7d0f630) at
kernel/qapplication.cpp:3632
#31 0x00007ff5685769fa in QCoreApplication::notifyInternal2
(receiver=0x55fad2f1e630, event=0x55fad7d0f630) at
kernel/qcoreapplication.cpp:1064
#32 0x00007ff568579a47 in QCoreApplicationPrivate::sendPostedEvents
(receiver=0x55fad2f1e630, event_type=77, data=0x55fad2da1480) at
kernel/qcoreapplication.cpp:1821
#33 0x00007ff5696c0b43 in QGraphicsViewPrivate::dispatchPendingUpdateRequests
(this=<optimized out>, this=<optimized out>) at
../../include/QtWidgets/5.15.2/QtWidgets/private/../../../../../src/widgets/graphicsview/qgraphicsview_p.h:191
#34 QGraphicsViewPrivate::dispatchPendingUpdateRequests (this=0x55fad340a770)
at
../../include/QtWidgets/5.15.2/QtWidgets/private/../../../../../src/widgets/graphicsview/qgraphicsview_p.h:186
#35 QGraphicsScenePrivate::_q_processDirtyItems (this=0x55fad302c4f0) at
graphicsview/qgraphicsscene.cpp:516
#36 0x00007ff5685a2fee in QObject::event (this=0x55fad32c0770,
e=0x55fadcc25ac0) at kernel/qobject.cpp:1314
#37 0x00007ff56938da7f in QApplicationPrivate::notify_helper (this=<optimized
out>, receiver=0x55fad32c0770, e=0x55fadcc25ac0) at
kernel/qapplication.cpp:3632
#38 0x00007ff5685769fa in QCoreApplication::notifyInternal2
(receiver=0x55fad32c0770, event=0x55fadcc25ac0) at
kernel/qcoreapplication.cpp:1064
#39 0x00007ff568579a47 in QCoreApplicationPrivate::sendPostedEvents
(receiver=0x0, event_type=0, data=0x55fad2da1480) at
kernel/qcoreapplication.cpp:1821
#40 0x00007ff5685ce853 in postEventSourceDispatch (s=s@entry=0x55fad2ec3680) at
kernel/qeventdispatcher_glib.cpp:277
#41 0x00007ff565d9ad4f in g_main_dispatch (context=0x7ff55c005000) at
../glib/gmain.c:3381
#42 g_main_context_dispatch (context=0x7ff55c005000) at ../glib/gmain.c:4099
#43 0x00007ff565d9b0d8 in g_main_context_iterate
(context=context@entry=0x7ff55c005000, block=block@entry=1,
dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4175
#44 0x00007ff565d9b18f in g_main_context_iteration (context=0x7ff55c005000,
may_block=1) at ../glib/gmain.c:4240
#45 0x00007ff5685cded4 in QEventDispatcherGlib::processEvents
(this=0x55fad2ed1360, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#46 0x00007ff5685753fb in QEventLoop::exec (this=this@entry=0x7ffc05a743e0,
flags=..., flags@entry=...) at
../../include/QtCore/../../src/corelib/global/qflags.h:69
#47 0x00007ff56857d6e0 in QCoreApplication::exec () at
../../include/QtCore/../../src/corelib/global/qflags.h:121
#48 0x00007ff568c2f18c in QGuiApplication::exec () at
kernel/qguiapplication.cpp:1867
#49 0x00007ff56938d9f5 in QApplication::exec () at kernel/qapplication.cpp:2824
#50 0x000055fad1b4b783 in main (argc=<optimized out>, argv=<optimized out>) at
/usr/src/debug/gwenview5-21.08.3-1.1.x86_64/app/main.cpp:202
```

STEPS TO REPRODUCE
1.  Opened an image in gwenview out of a gtk app (Dino)
2.  Clicked on the "rotate counter clock wise" button

OBSERVED RESULT
Gwenview crashed.

SOFTWARE/OS VERSIONS
Operating System: openSUSE Tumbleweed 20211111
KDE Plasma Version: 5.23.2
KDE Frameworks Version: 5.87.0
Qt Version: 5.15.2
Kernel Version: 5.14.14-2-default (64-bit)
Graphics Platform: X11

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to