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

            Bug ID: 472235
           Summary: digikam crashes on escaping from [modal] dialogs such
                    as album properties form
    Classification: Applications
           Product: digikam
           Version: 8.0.0
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: major
          Priority: NOR
         Component: Albums-Engine
          Assignee: digikam-bugs-n...@kde.org
          Reporter: hamidrjaf...@gmail.com
  Target Milestone: ---

I pressed Alt+Enter on an item to show album properties, then pressed Escape
and it crashed:



Thread 1 "digikam" received signal SIGSEGV, Segmentation fault.
QWeakPointer<QObject>::internalData (this=0x55555a48cb70)
    at ../../include/QtCore/../../src/corelib/tools/qsharedpointer_impl.h:698
Downloading source file
/usr/src/qtbase-opensource-src-5.15.8+dfsg-3/src/corelib/../../include/QtCore/../../src/corelib/tools/qsharedpointer_impl.h
698             return d == nullptr || d->strongref.loadRelaxed() == 0 ?
nullptr : value;
(gdb) help
List of classes of commands:

aliases -- User-defined aliases of other commands.
breakpoints -- Making program stop at certain points.
data -- Examining data.
files -- Specifying and examining files.
internals -- Maintenance commands.
obscure -- Obscure features.
running -- Running the program.
stack -- Examining the stack.
status -- Status inquiries.
support -- Support facilities.
text-user-interface -- TUI is the GDB text based interface.
tracepoints -- Tracing of program execution without stopping the program.
user-defined -- User-defined commands.

Type "help" followed by a class name for a list of commands in that class.
Type "help all" for the list of all commands.
Type "help" followed by command name for full documentation.
Type "apropos word" to search for commands related to "word".
Type "apropos -v word" for full documentation of commands related to "word".
Command name abbreviations are allowed if unambiguous.
(gdb) status
Undefined command: "status".  Try "help".
(gdb) backtrace
Display all 200 possibilities? (y or n)
(gdb) backtrace
#0  QWeakPointer<QObject>::internalData (this=0x55555a48cb70)
    at ../../include/QtCore/../../src/corelib/tools/qsharedpointer_impl.h:698
#1  QPointer<QObject>::data (this=0x55555a48cb70) at
../../include/QtCore/../../src/corelib/kernel/qpointer.h:77
#2  QPointer<QObject>::operator-> (this=0x55555a48cb70)
    at ../../include/QtCore/../../src/corelib/kernel/qpointer.h:79
#3  operator==<QObject> (o=0x55555a45ffb0, p=...) at
../../include/QtCore/../../src/corelib/kernel/qpointer.h:107
#4  QObject::removeEventFilter (this=<optimized out>, obj=0x55555a45ffb0) at
kernel/qobject.cpp:2286
#5  0x00007ffff2a6129a in
Sonnet::SpellCheckDecoratorPrivate::~SpellCheckDecoratorPrivate
(this=<optimized out>,
    this=<optimized out>) at
/usr/src/sonnet-5.104.0-0ubuntu1/src/ui/spellcheckdecorator.cpp:54
#6  std::default_delete<Sonnet::SpellCheckDecoratorPrivate>::operator()
(this=<optimized out>,
    __ptr=0x55555a45edd0) at /usr/include/c++/12/bits/unique_ptr.h:95
#7  std::default_delete<Sonnet::SpellCheckDecoratorPrivate>::operator()
(__ptr=0x55555a45edd0,
    this=<optimized out>) at /usr/include/c++/12/bits/unique_ptr.h:89
#8  std::unique_ptr<Sonnet::SpellCheckDecoratorPrivate,
std::default_delete<Sonnet::SpellCheckDecoratorPrivate> >::~unique_ptr
(this=<optimized out>, this=<optimized out>) at
/usr/include/c++/12/bits/unique_ptr.h:396
#9  Sonnet::SpellCheckDecorator::~SpellCheckDecorator (this=<optimized out>,
this=<optimized out>)
    at /usr/src/sonnet-5.104.0-0ubuntu1/src/ui/spellcheckdecorator.cpp:234
#10 0x00007ffff2a612cd in Sonnet::SpellCheckDecorator::~SpellCheckDecorator
(this=<optimized out>,
    this=<optimized out>) at
/usr/src/sonnet-5.104.0-0ubuntu1/src/ui/spellcheckdecorator.cpp:234
#11 0x00007ffff4ee58ae in QObjectPrivate::deleteChildren
(this=this@entry=0x55555a3ffb00)
    at kernel/qobject.cpp:2137
#12 0x00007ffff5baa586 in QWidget::~QWidget (this=0x55555a4579e0,
__in_chrg=<optimized out>)
    at kernel/qwidget.cpp:1524
#13 0x00007ffff6ac92cd in Digikam::DTextEdit::~DTextEdit (this=0x55555a4579e0,
__in_chrg=<optimized out>)
    at
/usr/src/digikam-4:8.0.0~+beta1-0ubuntu3/core/libs/widgets/text/dtextedit.cpp:46
#14 0x00007ffff4ee58ae in QObjectPrivate::deleteChildren
(this=this@entry=0x55555a4551f0)
    at kernel/qobject.cpp:2137
#15 0x00007ffff5baa586 in QWidget::~QWidget (this=0x55555a455a10,
__in_chrg=<optimized out>)
    at kernel/qwidget.cpp:1524
#16 0x00007ffff5baa8cd in QWidget::~QWidget (this=0x55555a455a10,
__in_chrg=<optimized out>)
    at kernel/qwidget.cpp:1548
#17 0x00007ffff4ee58ae in QObjectPrivate::deleteChildren
(this=this@entry=0x7fffc4050cb0)
    at kernel/qobject.cpp:2137
#18 0x00007ffff5baa586 in QWidget::~QWidget (this=this@entry=0x55555a371b90,
__in_chrg=<optimized out>)
    at kernel/qwidget.cpp:1524
#19 0x00007ffff5d7a02e in QDialog::~QDialog (this=this@entry=0x55555a371b90,
__in_chrg=<optimized out>)
    at dialogs/qdialog.cpp:426
#20 0x00007ffff79624e5 in Digikam::AlbumPropsEdit::~AlbumPropsEdit
(this=0x55555a371b90, __in_chrg=<optimized out>)
    at
/usr/src/digikam-4:8.0.0~+beta1-0ubuntu3/core/libs/album/widgets/albumpropsedit.cpp:316
#21 Digikam::AlbumPropsEdit::~AlbumPropsEdit (this=0x55555a371b90,
__in_chrg=<optimized out>)
    at
/usr/src/digikam-4:8.0.0~+beta1-0ubuntu3/core/libs/album/widgets/albumpropsedit.cpp:316
#22 Digikam::AlbumPropsEdit::editProps (album=album@entry=0x555558a5df10,
title=..., comments=..., date=...,
    category=..., albumCategories=...)
    at
/usr/src/digikam-4:8.0.0~+beta1-0ubuntu3/core/libs/album/widgets/albumpropsedit.cpp:390
#23 0x00007ffff7955f5a in Digikam::AlbumModificationHelper::slotAlbumEdit
(this=0x555556c6d890,
    album=0x555558a5df10)
    at
/usr/src/digikam-4:8.0.0~+beta1-0ubuntu3/core/libs/album/engine/albummodificationhelper.cpp:353
#24 0x00007ffff4ef39dc in doActivate<false> (sender=0x55555807d120,
signal_index=4, argv=0x7fffffffd340)
    at kernel/qobject.cpp:3935
#25 0x00007ffff4eeca47 in QMetaObject::activate
(sender=sender@entry=0x55555807d120,
    m=m@entry=0x7ffff608dd00 <QAction::staticMetaObject>,
local_signal_index=local_signal_index@entry=1,
    argv=argv@entry=0x7fffffffd340) at kernel/qobject.cpp:3983
#26 0x00007ffff5b65546 in QAction::triggered (this=this@entry=0x55555807d120,
_t1=<optimized out>)
    at .moc/moc_qaction.cpp:376
#27 0x00007ffff5b68203 in QAction::activate (this=0x55555807d120,
event=<optimized out>) at kernel/qaction.cpp:1161
#28 0x00007ffff5b68ddd in QAction::event (e=<optimized out>, this=<optimized
out>) at kernel/qaction.cpp:1086
#29 QAction::event (this=<optimized out>, e=<optimized out>) at
kernel/qaction.cpp:1075
#30 0x00007ffff5b6bf92 in QApplicationPrivate::notify_helper (this=<optimized
out>, receiver=0x55555807d120,
--Type <RET> for more, q to quit, c to continue without paging--
    e=0x7fffffffd4e0) at kernel/qapplication.cpp:3640
#31 0x00007ffff4ebae38 in QCoreApplication::notifyInternal2
(receiver=0x55555807d120, event=0x7fffffffd4e0)
    at kernel/qcoreapplication.cpp:1064
#32 0x00007ffff4ebb012 in QCoreApplication::sendEvent (receiver=<optimized
out>, event=<optimized out>)
    at kernel/qcoreapplication.cpp:1462
#33 0x00007ffff53721ab in QShortcutMap::dispatchEvent (this=<optimized out>,
e=<optimized out>)
    at kernel/qshortcutmap.cpp:675
#34 0x00007ffff5372b03 in QShortcutMap::tryShortcut
(this=this@entry=0x555555b02e58, e=e@entry=0x7fffffffd5a0)
    at kernel/qshortcutmap.cpp:343
#35 0x00007ffff5319c1a in QWindowSystemInterface::handleShortcutEvent
(window=<optimized out>,
    timestamp=235879814, keyCode=16777220, modifiers=..., nativeScanCode=36,
nativeVirtualKey=65293,
    nativeModifiers=8, text=..., autorepeat=false, count=1) at
kernel/qwindowsysteminterface.cpp:477
#36 0x00007ffff533e0d1 in QGuiApplicationPrivate::processKeyEvent
(e=0x55555a444880)
    at kernel/qguiapplication.cpp:2391
#37 0x00007ffff53164bc in QWindowSystemInterface::sendWindowSystemEvents
(flags=flags@entry=...)
    at kernel/qwindowsysteminterface.cpp:1169
#38 0x00007fffd20fa54e in xcbSourceDispatch (source=<optimized out>) at
qxcbeventdispatcher.cpp:105
#39 0x00007fffe5d1549d in g_main_dispatch (context=0x7fffcc000ee0) at
../../../glib/gmain.c:3460
#40 g_main_context_dispatch (context=0x7fffcc000ee0) at
../../../glib/gmain.c:4200
#41 0x00007fffe5d70178 in g_main_context_iterate.constprop.0
(context=0x7fffcc000ee0, block=<optimized out>,
    dispatch=1, self=<optimized out>) at ../../../glib/gmain.c:4276
#42 0x00007fffe5d141b0 in g_main_context_iteration (context=0x7fffcc000ee0,
may_block=1)
    at ../../../glib/gmain.c:4343
#43 0x00007ffff4f14e7a in QEventDispatcherGlib::processEvents
(this=0x555555c99360, flags=...)
    at kernel/qeventdispatcher_glib.cpp:423
#44 0x00007ffff4eb97cb in QEventLoop::exec (this=this@entry=0x7fffffffd8e0,
flags=..., flags@entry=...)
    at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#45 0x00007ffff4ec1c1a in QCoreApplication::exec () at
../../include/QtCore/../../src/corelib/global/qflags.h:121
#46 0x00007ffff5335db0 in QGuiApplication::exec () at
kernel/qguiapplication.cpp:1863
#47 0x00007ffff5b6bf09 in QApplication::exec () at kernel/qapplication.cpp:2832
#48 0x000055555555a9a1 in main (argc=<optimized out>, argv=<optimized out>)
    at /usr/src/digikam-4:8.0.0~+beta1-0ubuntu3/core/app/main/main.cpp:456
(gdb)

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

Reply via email to