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

Victor Lobo <victor.ip.l...@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |---

--- Comment #2 from Victor Lobo <victor.ip.l...@gmail.com> ---
Reopening this bug since the fix seems to have caused another crash if the file
is deleted when the Viewer and Annotations window is open.
Let me know if this should we reported  as a new bug.

Steps to reproduce this:
1. Open KPhotoAlbum
2. Go to Thumbnail View
3. Open  any image or video (does NOT  have to be the last)
4. From the Viewer window opens the Annotations window (Ctrl + 1)
5. Keep the Viewer window and Annotations window open and go back to Thumbnail
view and delete ANY image/video (Press Delete key)
6. Crash 


Backtrace:
Application: KPhotoAlbum (kphotoalbum), signal: Aborted

[KCrash Handler]
#4  0x00007f4195091e0c in __pthread_kill_implementation () from
/lib64/libc.so.6
#5  0x00007f419503f0e6 in raise () from /lib64/libc.so.6
#6  0x00007f41950268d7 in abort () from /lib64/libc.so.6
#7  0x00007f41958bb4f9 in qt_message_fatal (message=<synthetic pointer>...,
context=...) at global/qlogging.cpp:1914
#8  QMessageLogger::fatal (this=this@entry=0x7ffe4cb45e88,
msg=msg@entry=0x7f4195bd2028 "ASSERT failure in %s: \"%s\", file %s, line %d")
at global/qlogging.cpp:893
#9  0x00007f41958ba78c in qt_assert_x (where=<optimized out>, what=<optimized
out>, file=<optimized out>, line=<optimized out>) at global/qglobal.cpp:3399
#10 0x00000000004e13d2 in QList<DB::FileName>::operator[] (this=0x18322c0, i=0)
at /usr/include/qt5/QtCore/qlist.h:579
#11 0x00000000004d72ba in Viewer::ViewerWidget::slotRemoveDeletedImages
(this=0x18321f0, imageList=...) at
/home/victor/Downloads/kphotoalbum/Viewer/ViewerWidget.cpp:515
#12 0x00000000004e5ac9 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>,
QtPrivate::List<DB::FileNameList const&>, void, void
(Viewer::ViewerWidget::*)(DB::FileNameList const&)>::call (f=(void
(Viewer::ViewerWidget::*)(Viewer::ViewerWidget * const, const DB::FileNameList
&)) 0x4d728a <Viewer::ViewerWidget::slotRemoveDeletedImages(DB::FileNameList
const&)>, o=0x18321f0, arg=0x7ffe4cb460f0) at
/usr/include/qt5/QtCore/qobjectdefs_impl.h:152
#13 0x00000000004e50b2 in QtPrivate::FunctionPointer<void
(Viewer::ViewerWidget::*)(DB::FileNameList
const&)>::call<QtPrivate::List<DB::FileNameList const&>, void> (f=(void
(Viewer::ViewerWidget::*)(Viewer::ViewerWidget * const, const DB::FileNameList
&)) 0x4d728a <Viewer::ViewerWidget::slotRemoveDeletedImages(DB::FileNameList
const&)>, o=0x18321f0, arg=0x7ffe4cb460f0) at
/usr/include/qt5/QtCore/qobjectdefs_impl.h:185
#14 0x00000000004e3e7b in QtPrivate::QSlotObject<void
(Viewer::ViewerWidget::*)(DB::FileNameList const&),
QtPrivate::List<DB::FileNameList const&>, void>::impl (which=1,
this_=0x1a86c50, r=0x18321f0, a=0x7ffe4cb460f0, ret=0x0) at
/usr/include/qt5/QtCore/qobjectdefs_impl.h:418
#15 0x00007f4195b25812 in QtPrivate::QSlotObjectBase::call (a=0x7ffe4cb460f0,
r=0x18321f0, this=0x1a86c50) at
../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#16 doActivate<false> (sender=0xbe65d0, signal_index=5, argv=0x7ffe4cb460f0) at
kernel/qobject.cpp:3925
#17 0x000000000058b401 in DB::ImageDB::imagesDeleted (this=0xbe65d0, _t1=...)
at
/home/victor/Downloads/kphotoalbum/build/kphotoalbum_autogen/include/moc_ImageDB.cpp:261
#18 0x0000000000586d12 in DB::ImageDB::deleteList (this=0xbe65d0, list=...) at
/home/victor/Downloads/kphotoalbum/DB/ImageDB.cpp:638
#19 0x0000000000652956 in Utilities::DeleteFiles::deleteFilesPrivate
(this=0x198ffe0, files=..., method=Utilities::MoveToTrash) at
/home/victor/Downloads/kphotoalbum/Utilities/DeleteFiles.cpp:73
#20 0x00000000006525ad in Utilities::DeleteFiles::deleteFiles (files=...,
method=Utilities::MoveToTrash) at
/home/victor/Downloads/kphotoalbum/Utilities/DeleteFiles.cpp:31
#21 0x0000000000524479 in MainWindow::DeleteDialog::deleteImages
(this=0x1963fb0) at
/home/victor/Downloads/kphotoalbum/MainWindow/DeleteDialog.cpp:89
#22 0x0000000000524aa0 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>,
QtPrivate::List<>, void, void (MainWindow::DeleteDialog::*)()>::call(void
(MainWindow::DeleteDialog::*)(), MainWindow::DeleteDialog*, void**) (f=(void
(MainWindow::DeleteDialog::*)(MainWindow::DeleteDialog * const)) 0x524420
<MainWindow::DeleteDialog::deleteImages()>, o=0x1963fb0, arg=0x7ffe4cb46480) at
/usr/include/qt5/QtCore/qobjectdefs_impl.h:152
#23 0x0000000000524a32 in QtPrivate::FunctionPointer<void
(MainWindow::DeleteDialog::*)()>::call<QtPrivate::List<>, void>(void
(MainWindow::DeleteDialog::*)(), MainWindow::DeleteDialog*, void**) (f=(void
(MainWindow::DeleteDialog::*)(MainWindow::DeleteDialog * const)) 0x524420
<MainWindow::DeleteDialog::deleteImages()>, o=0x1963fb0, arg=0x7ffe4cb46480) at
/usr/include/qt5/QtCore/qobjectdefs_impl.h:185
#24 0x000000000052499d in QtPrivate::QSlotObject<void
(MainWindow::DeleteDialog::*)(), QtPrivate::List<>, void>::impl(int,
QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1,
this_=0x1817560, r=0x1963fb0, a=0x7ffe4cb46480, ret=0x0) at
/usr/include/qt5/QtCore/qobjectdefs_impl.h:418
#25 0x00007f4195b25812 in QtPrivate::QSlotObjectBase::call (a=0x7ffe4cb46480,
r=0x1963fb0, this=0x1817560) at
../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#26 doActivate<false> (sender=0xe30ca0, signal_index=8, argv=0x7ffe4cb46480) at
kernel/qobject.cpp:3925
#27 0x00007f4195b1e47f in QMetaObject::activate (sender=sender@entry=0xe30ca0,
m=m@entry=0x7f4196cc9440 <QDialogButtonBox::staticMetaObject>,
local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0) at
kernel/qobject.cpp:3985
#28 0x00007f4196940203 in QDialogButtonBox::accepted (this=this@entry=0xe30ca0)
at .moc/moc_qdialogbuttonbox.cpp:287
#29 0x00007f4196940860 in QDialogButtonBoxPrivate::_q_handleButtonClicked
(this=<optimized out>) at widgets/qdialogbuttonbox.cpp:878
#30 0x00007f4195b257b3 in doActivate<false> (sender=0x1959330, signal_index=9,
argv=0x7ffe4cb465e0) at kernel/qobject.cpp:3937
#31 0x00007f4195b1e47f in QMetaObject::activate (sender=sender@entry=0x1959330,
m=m@entry=0x7f4196cc0280 <QAbstractButton::staticMetaObject>,
local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x7ffe4cb465e0)
at kernel/qobject.cpp:3985
#32 0x00007f4196896ac2 in QAbstractButton::clicked (this=this@entry=0x1959330,
_t1=<optimized out>) at .moc/moc_qabstractbutton.cpp:308
#33 0x00007f4196896d2a in QAbstractButtonPrivate::emitClicked (this=0x1964520)
at widgets/qabstractbutton.cpp:416
#34 0x00007f41968988d9 in QAbstractButton::click (this=0x1959330) at
widgets/qabstractbutton.cpp:905
#35 QAbstractButton::click (this=0x1959330) at widgets/qabstractbutton.cpp:891
#36 0x00007f41969ad5bc in QDialog::keyPressEvent (e=<optimized out>,
this=<optimized out>) at dialogs/qdialog.cpp:723
#37 QDialog::keyPressEvent (this=<optimized out>, e=<optimized out>) at
dialogs/qdialog.cpp:703
#38 0x00007f41967e7ab5 in QWidget::event (this=0x1963fb0, event=0x7ffe4cb46a90)
at kernel/qwidget.cpp:8704
#39 0x00007f41967a519e in QApplicationPrivate::notify_helper
(this=this@entry=0x8b6d50, receiver=receiver@entry=0x1963fb0,
e=e@entry=0x7ffe4cb46a90) at kernel/qapplication.cpp:3640
#40 0x00007f41967ad0b8 in QApplication::notify (this=<optimized out>,
receiver=0x1963fb0, e=0x7ffe4cb46a90) at kernel/qapplication.cpp:3002
#41 0x00007f4195aed568 in QCoreApplication::notifyInternal2
(receiver=0x1828e80, event=0x7ffe4cb46a90) at kernel/qcoreapplication.cpp:1064
#42 0x00007f4195aed5b2 in QCoreApplication::forwardEvent (receiver=<optimized
out>, event=<optimized out>, originatingEvent=<optimized out>) at
kernel/qcoreapplication.cpp:1079
#43 0x00007f4196802d6a in QWidgetWindow::event (this=0x1812960,
event=0x7ffe4cb46a90) at kernel/qwidgetwindow.cpp:293
#44 0x00007f41967a519e in QApplicationPrivate::notify_helper (this=<optimized
out>, receiver=0x1812960, e=0x7ffe4cb46a90) at kernel/qapplication.cpp:3640
#45 0x00007f4195aed568 in QCoreApplication::notifyInternal2
(receiver=0x1812960, event=0x7ffe4cb46a90) at kernel/qcoreapplication.cpp:1064
#46 0x00007f4195f78df9 in QGuiApplicationPrivate::processKeyEvent (e=0x1983610)
at kernel/qguiapplication.cpp:2417
#47 0x00007f4195f5036c in QWindowSystemInterface::sendWindowSystemEvents
(flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1169
#48 0x00007f418a31b1aa in xcbSourceDispatch (source=<optimized out>) at
qxcbeventdispatcher.cpp:105
#49 0x00007f41927169d8 in g_main_context_dispatch () from
/lib64/libglib-2.0.so.0
#50 0x00007f4192716de8 in ?? () from /lib64/libglib-2.0.so.0
#51 0x00007f4192716e7c in g_main_context_iteration () from
/lib64/libglib-2.0.so.0
#52 0x00007f4195b464a6 in QEventDispatcherGlib::processEvents (this=0x99c350,
flags=...) at kernel/qeventdispatcher_glib.cpp:423
#53 0x00007f4195aebffb in QEventLoop::exec (this=this@entry=0x7ffe4cb46d20,
flags=..., flags@entry=...) at
../../include/QtCore/../../src/corelib/global/qflags.h:69
#54 0x00007f41969ada07 in QDialog::exec (this=0x1963fb0) at
../../include/QtCore/../../src/corelib/global/qflags.h:121
#55 0x000000000052436b in MainWindow::DeleteDialog::exec (this=0x1963fb0,
list=...) at /home/victor/Downloads/kphotoalbum/MainWindow/DeleteDialog.cpp:84
#56 0x0000000000536c86 in MainWindow::Window::slotDeleteSelected
(this=0xb8bef0) at /home/victor/Downloads/kphotoalbum/MainWindow/Window.cpp:548
#57 0x000000000054da7a in QtPrivate::FunctorCall<QtPrivate::IndexesList<>,
QtPrivate::List<>, void, void (MainWindow::Window::*)()>::call(void
(MainWindow::Window::*)(), MainWindow::Window*, void**) (f=(void
(MainWindow::Window::*)(MainWindow::Window * const)) 0x536c06
<MainWindow::Window::slotDeleteSelected()>, o=0xb8bef0, arg=0x7ffe4cb47030) at
/usr/include/qt5/QtCore/qobjectdefs_impl.h:152
#58 0x000000000054d1f3 in QtPrivate::FunctionPointer<void
(MainWindow::Window::*)()>::call<QtPrivate::List<>, void>(void
(MainWindow::Window::*)(), MainWindow::Window*, void**) (f=(void
(MainWindow::Window::*)(MainWindow::Window * const)) 0x536c06
<MainWindow::Window::slotDeleteSelected()>, o=0xb8bef0, arg=0x7ffe4cb47030) at
/usr/include/qt5/QtCore/qobjectdefs_impl.h:185
#59 0x000000000054baab in QtPrivate::QSlotObject<void
(MainWindow::Window::*)(), QtPrivate::List<>, void>::impl(int,
QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0xd3e6f0,
r=0xb8bef0, a=0x7ffe4cb47030, ret=0x0) at
/usr/include/qt5/QtCore/qobjectdefs_impl.h:418
#60 0x00007f4195b25812 in QtPrivate::QSlotObjectBase::call (a=0x7ffe4cb47030,
r=0xb8bef0, this=0xd3e6f0) at
../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#61 doActivate<false> (sender=0xee76b0, signal_index=4, argv=0x7ffe4cb47030) at
kernel/qobject.cpp:3925
#62 0x00007f4195b1e47f in QMetaObject::activate (sender=sender@entry=0xee76b0,
m=m@entry=0x7f4196cbacc0 <QAction::staticMetaObject>,
local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffe4cb47030)
at kernel/qobject.cpp:3985
#63 0x00007f419679e8b2 in QAction::triggered (this=this@entry=0xee76b0,
_t1=<optimized out>) at .moc/moc_qaction.cpp:376
#64 0x00007f41967a142f in QAction::activate (this=0xee76b0, event=<optimized
out>) at kernel/qaction.cpp:1161
#65 0x00007f41967a200d in QAction::event (e=<optimized out>, this=<optimized
out>) at kernel/qaction.cpp:1086
#66 QAction::event (this=<optimized out>, e=<optimized out>) at
kernel/qaction.cpp:1075
#67 0x00007f41967a519e in QApplicationPrivate::notify_helper (this=<optimized
out>, receiver=0xee76b0, e=0x7ffe4cb471d0) at kernel/qapplication.cpp:3640
#68 0x00007f4195aed568 in QCoreApplication::notifyInternal2 (receiver=0xee76b0,
event=0x7ffe4cb471d0) at kernel/qcoreapplication.cpp:1064
#69 0x00007f4195aed72e in QCoreApplication::sendEvent (receiver=<optimized
out>, event=<optimized out>) at kernel/qcoreapplication.cpp:1462
#70 0x00007f4195fad671 in QShortcutMap::dispatchEvent (this=<optimized out>,
e=<optimized out>) at kernel/qshortcutmap.cpp:675
#71 0x00007f4195fae28b in QShortcutMap::tryShortcut (this=this@entry=0x8b6e18,
e=e@entry=0x7ffe4cb47290) at kernel/qshortcutmap.cpp:343
#72 0x00007f4195f53976 in QWindowSystemInterface::handleShortcutEvent
(window=<optimized out>, timestamp=192572682, keyCode=16777223, modifiers=...,
nativeScanCode=119, nativeVirtualKey=65535, nativeModifiers=0, text=...,
autorepeat=false, count=1) at kernel/qwindowsysteminterface.cpp:477
#73 0x00007f4195f78d9d in QGuiApplicationPrivate::processKeyEvent (e=0x2ad0fb0)
at kernel/qguiapplication.cpp:2398
#74 0x00007f4195f5036c in QWindowSystemInterface::sendWindowSystemEvents
(flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1169
#75 0x00007f418a31b1aa in xcbSourceDispatch (source=<optimized out>) at
qxcbeventdispatcher.cpp:105
#76 0x00007f41927169d8 in g_main_context_dispatch () from
/lib64/libglib-2.0.so.0
#77 0x00007f4192716de8 in ?? () from /lib64/libglib-2.0.so.0
#78 0x00007f4192716e7c in g_main_context_iteration () from
/lib64/libglib-2.0.so.0
#79 0x00007f4195b464a6 in QEventDispatcherGlib::processEvents (this=0x99c350,
flags=...) at kernel/qeventdispatcher_glib.cpp:423
#80 0x00007f4195aebffb in QEventLoop::exec (this=this@entry=0x7ffe4cb475d0,
flags=..., flags@entry=...) at
../../include/QtCore/../../src/corelib/global/qflags.h:69
#81 0x00007f41969ada07 in QDialog::exec (this=0xdc7ce0) at
../../include/QtCore/../../src/corelib/global/qflags.h:121
#82 0x00000000005e907a in AnnotationDialog::Dialog::exec (this=0xdc7ce0) at
/home/victor/Downloads/kphotoalbum/AnnotationDialog/Dialog.cpp:958
#83 0x00000000005e7325 in AnnotationDialog::Dialog::configure (this=0xdc7ce0,
list=..., oneAtATime=true) at
/home/victor/Downloads/kphotoalbum/AnnotationDialog/Dialog.cpp:769
#84 0x000000000053667d in MainWindow::Window::configImages (this=0xb8bef0,
list=..., oneAtATime=true) at
/home/victor/Downloads/kphotoalbum/MainWindow/Window.cpp:509
#85 0x000000000053661b in MainWindow::Window::configureImages (list=...,
oneAtATime=true) at
/home/victor/Downloads/kphotoalbum/MainWindow/Window.cpp:503
#86 0x00000000004d8f37 in operator() (__closure=0x7f417c002670) at
/home/victor/Downloads/kphotoalbum/Viewer/ViewerWidget.cpp:926
#87 0x00000000004dfd89 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>,
QtPrivate::List<>, void, Viewer::ViewerWidget::editImage()::<lambda()>
>::call(struct {...} &, void **) (f=..., arg=0x197f908) at
/usr/include/qt5/QtCore/qobjectdefs_impl.h:146
#88 0x00000000004dfc75 in
QtPrivate::Functor<Viewer::ViewerWidget::editImage()::<lambda()>,
0>::call<QtPrivate::List<>, void>(struct {...} &, void *, void **) (f=...,
arg=0x197f908) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:256
#89 0x00000000004dfb8a in
QtPrivate::QFunctorSlotObject<Viewer::ViewerWidget::editImage()::<lambda()>, 0,
QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *,
void **, bool *) (which=1, this_=0x7f417c002660, r=0x8b4970, a=0x197f908,
ret=0x0) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:443
#90 0x00007f4195b19320 in QObject::event (this=0x8b4970, e=0x197f8c0) at
kernel/qobject.cpp:1347
#91 0x00007f41967a519e in QApplicationPrivate::notify_helper (this=<optimized
out>, receiver=0x8b4970, e=0x197f8c0) at kernel/qapplication.cpp:3640
#92 0x00007f4195aed568 in QCoreApplication::notifyInternal2 (receiver=0x8b4970,
event=0x197f8c0) at kernel/qcoreapplication.cpp:1064
#93 0x00007f4195aed72e in QCoreApplication::sendEvent (receiver=<optimized
out>, event=<optimized out>) at kernel/qcoreapplication.cpp:1462
#94 0x00007f4195af0b61 in QCoreApplicationPrivate::sendPostedEvents
(receiver=0x0, event_type=0, data=0x8b48f0) at kernel/qcoreapplication.cpp:1821
#95 0x00007f4195af10a8 in QCoreApplication::sendPostedEvents
(receiver=<optimized out>, event_type=<optimized out>) at
kernel/qcoreapplication.cpp:1680
#96 0x00007f4195b46c93 in postEventSourceDispatch (s=0x996eb0) at
kernel/qeventdispatcher_glib.cpp:277
#97 0x00007f41927169d8 in g_main_context_dispatch () from
/lib64/libglib-2.0.so.0
#98 0x00007f4192716de8 in ?? () from /lib64/libglib-2.0.so.0
#99 0x00007f4192716e7c in g_main_context_iteration () from
/lib64/libglib-2.0.so.0
#100 0x00007f4195b464a6 in QEventDispatcherGlib::processEvents (this=0x99c350,
flags=...) at kernel/qeventdispatcher_glib.cpp:423
#101 0x00007f4195aebffb in QEventLoop::exec (this=this@entry=0x7ffe4cb47c30,
flags=..., flags@entry=...) at
../../include/QtCore/../../src/corelib/global/qflags.h:69
#102 0x00007f4195af4490 in QCoreApplication::exec () at
../../include/QtCore/../../src/corelib/global/qflags.h:121
#103 0x0000000000472980 in main (argc=2, argv=0x7ffe4cb48338) at
/home/victor/Downloads/kphotoalbum/main.cpp:161
[Inferior 1 (process 17347) detached]

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

Reply via email to