[KPhotoAlbum] Re: Segfault in annotation dialog

Christoph Moseler forums at moseler.net
Sat Sep 9 19:23:48 BST 2006


Hi Jesper,

ok, now I know how it works. Also a good idea. But this must definitely 
be described in the handbook.

Sorry for being such a stupid user: I right-clicked on the area outside 
an item even though it doesn't make sense. That causes a segfault, 
because null-pointer cannot have a parent...

AnnotationDialog::ListSelect::showContextMenu:

     QListViewItem* parent = item->parent();

fix:
if ( item ) {
     QListViewItem* parent = item->parent();
     ...

Cheers,
Christoph

Jesper K. Pedersen wrote:
> The crash have been fixed now (by disabling the menu item in question). Using 
> the possibility to click outsite an item wont really work in real life, as 
> you would have so many items that the listbox would always be full anyway.
> 
> Now to what you were trying to do. Simply type the name of your new toplevel 
> item in the line edit, and it will be created, and you can now add items to 
> it.
> 
> Cheers
> Jesper
> 
> On Friday 01 September 2006 00:06, Christoph Moseler wrote:
> | Hi Jesper,
> |
> | I tried to add a new subcategory at the top level of a category. For
> | that, I right-clicked on the empty space beside the category items,
> | selected "Create Subcategory" in the context menu, typed in a name and
> | clicked OK. This causes a segfault.
> |
> | I'm trying to add Keyword4:
> |
> |
> |        Keywords
> | [ ] Keyword1
> | + [ ] Keyword11
> | [ ] Keyword2
> | [ ] Keyword3
> | [ ] Keyword4 (to be added, not yet created)
> |
> |     x <- right-click here, -> "Create Subcategory"
> |
> | So, how can I add a new subcategory at the root of a category?
> |
> | Cheers,
> | Christoph
> |
> |
> | (gdb) backtrace
> | #0  0x08139646 in AnnotationDialog::ListSelect::showContextMenu
> | (this=0xb1238c0, item=0x0, pos=@0xbfcf200c) at
> | /home/chris/build/kimdaba/kphotoalbum-2.2.1/kphotoalbum/AnnotationDialog/Li
> |stSelect.cpp:436 #1  0x0813a1a8 in AnnotationDialog::ListSelect::qt_invoke
> | (this=0xb1238c0, _id=52, _o=0xbfcf1f10) at ./ListSelect.moc:131
> | #2  0xb6f4854b in QObject::activate_signal (this=0xad0be50,
> | clist=0xb8d9fe0, o=0xbfcf1f10) at kernel/qobject.cpp:2356
> | #3  0xb72f13cd in QListView::contextMenuRequested (this=0xad0be50,
> | t0=0x0, t1=@0xbfcf200c, t2=-1) at
> | .moc/debug-shared-mt/moc_qlistview.cpp:515 #4  0xb7041941 in
> | QListView::contentsContextMenuEvent (this=0xad0be50, e=0xbfcf205c) at
> | widgets/qlistview.cpp:4452
> | #5  0xb707cfcc in QScrollView::viewportContextMenuEvent (this=0xad0be50,
> | e=0xbfcf26ac) at widgets/qscrollview.cpp:1886
> | #6  0xb707f6ab in QScrollView::eventFilter (this=0xad0be50,
> | obj=0xc91d1e0, e=0xbfcf26ac) at widgets/qscrollview.cpp:1543
> | #7  0xb7043b8f in QListView::eventFilter (this=0xad0be50, o=0xc91d1e0,
> | e=0xbfcf26ac) at widgets/qlistview.cpp:3866
> | #8  0xb6f456b0 in QObject::activate_filters (this=0xc91d1e0,
> | e=0xbfcf26ac) at kernel/qobject.cpp:903
> | #9  0xb6f4572e in QObject::event (this=0xc91d1e0, e=0xbfcf26ac) at
> | kernel/qobject.cpp:735
> | #10 0xb6f82b9a in QWidget::event (this=0xc91d1e0, e=0xbfcf26ac) at
> | kernel/qwidget.cpp:4678
> | #11 0xb6ede87a in QApplication::internalNotify (this=0xbfcf4588,
> | receiver=0xc91d1e0, e=0xbfcf26ac) at kernel/qapplication.cpp:2635
> | #12 0xb6edf271 in QApplication::notify (this=0xbfcf4588,
> | receiver=0xc91d1e0, e=0xbfcf26ac) at kernel/qapplication.cpp:2478
> | #13 0xb769952e in KApplication::notify () from /usr/lib/libkdecore.so.4
> | #14 0xb6e7006f in QApplication::sendSpontaneousEvent
> | (receiver=0xc91d1e0, event=0xbfcf26ac) at kernel/qapplication.h:523
> | #15 0xb6e6b801 in QETWidget::translateMouseEvent (this=0xc91d1e0,
> | event=0xbfcf2a28) at kernel/qapplication_x11.cpp:4305
> | #16 0xb6e69c94 in QApplication::x11ProcessEvent (this=0xbfcf4588,
> | event=0xbfcf2a28) at kernel/qapplication_x11.cpp:3478
> | #17 0xb6e832a2 in QEventLoop::processEvents (this=0x82b26e0, flags=4) at
> | kernel/qeventloop_x11.cpp:192
> | #18 0xb6ef7255 in QEventLoop::enterLoop (this=0x82b26e0) at
> | kernel/qeventloop.cpp:198
> | #19 0x0812a04e in AnnotationDialog::Dialog::exec (this=0x832c408) at
> | /home/chris/build/kimdaba/kphotoalbum-2.2.1/kphotoalbum/AnnotationDialog/Di
> |alog.cpp:556 #20 0x0812d0bd in AnnotationDialog::Dialog::configure
> | (this=0x832c408, list=@0xbfcf2c1c, oneAtATime=true) at
> | /home/chris/build/kimdaba/kphotoalbum-2.2.1/kphotoalbum/AnnotationDialog/Di
> |alog.cpp:435 #21 0x0809232d in MainWindow::Window::configImages
> | (this=0x8310af0, list=@0xbfcf2c80, oneAtATime=true) at
> | /home/chris/build/kimdaba/kphotoalbum-2.2.1/kphotoalbum/MainWindow/Window.c
> |pp:348 #22 0x080923c7 in MainWindow::Window::configureImages
> | (list=@0xbfcf2c80, oneAtATime=true) at
> | /home/chris/build/kimdaba/kphotoalbum-2.2.1/kphotoalbum/MainWindow/Window.c
> |pp:341 #23 0x080925bc in MainWindow::Window::configureImages
> | (this=0x8310af0, oneAtATime=true) at
> | /home/chris/build/kimdaba/kphotoalbum-2.2.1/kphotoalbum/MainWindow/Window.c
> |pp:335 #24 0x08092639 in MainWindow::Window::slotConfigureImagesOneAtATime
> | (this=0x8310af0) at
> | /home/chris/build/kimdaba/kphotoalbum-2.2.1/kphotoalbum/MainWindow/Window.c
> |pp:319 #25 0x08092ec3 in MainWindow::Window::qt_invoke (this=0x8310af0,
> | _id=79, _o=0xbfcf2d8c) at ./Window.moc:275
> | #26 0xb6f4854b in QObject::activate_signal (this=0xc23c2b0,
> | clist=0xd3db648, o=0xbfcf2d8c) at kernel/qobject.cpp:2356
> | #27 0xb6f48fdc in QObject::activate_signal (this=0xc23c2b0, signal=2) at
> | kernel/qobject.cpp:2325
> | #28 0xb788a759 in KAction::activated () from /usr/lib/libkdeui.so.4
> | #29 0xb78c0fe1 in KAction::slotActivated () from /usr/lib/libkdeui.so.4
> | #30 0xb799ef4e in KAction::slotPopupActivated () from
> | /usr/lib/libkdeui.so.4 #31 0xb799f221 in KAction::qt_invoke () from
> | /usr/lib/libkdeui.so.4 #32 0xb6f4854b in QObject::activate_signal
> | (this=0xd32bbc8,
> | clist=0xc6af5c0, o=0xbfcf2ec8) at kernel/qobject.cpp:2356
> | #33 0xb72da1a9 in QSignal::signal (this=0xd32bbc8, t0=@0xd32bbf0) at
> | .moc/debug-shared-mt/moc_qsignal.cpp:100
> | #34 0xb6f65c4c in QSignal::activate (this=0xd32bbc8) at
> | kernel/qsignal.cpp:212
> | #35 0xb706d419 in QPopupMenu::mouseReleaseEvent (this=0xbfcf3a48,
> | e=0xbfcf343c) at widgets/qpopupmenu.cpp:1697
> | #36 0xb6f82c78 in QWidget::event (this=0xbfcf3a48, e=0xbfcf343c) at
> | kernel/qwidget.cpp:4702
> | #37 0xb6ede87a in QApplication::internalNotify (this=0xbfcf4588,
> | receiver=0xbfcf3a48, e=0xbfcf343c) at kernel/qapplication.cpp:2635
> | #38 0xb6ededff in QApplication::notify (this=0xbfcf4588,
> | receiver=0xbfcf3a48, e=0xbfcf343c) at kernel/qapplication.cpp:2421
> | #39 0xb769952e in KApplication::notify () from /usr/lib/libkdecore.so.4
> | #40 0xb6e7006f in QApplication::sendSpontaneousEvent
> | (receiver=0xbfcf3a48, event=0xbfcf343c) at kernel/qapplication.h:523
> | #41 0xb6e6b4f1 in QETWidget::translateMouseEvent (this=0xbfcf3a48,
> | event=0xbfcf3878) at kernel/qapplication_x11.cpp:4243
> | #42 0xb6e69c94 in QApplication::x11ProcessEvent (this=0xbfcf4588,
> | event=0xbfcf3878) at kernel/qapplication_x11.cpp:3478
> | #43 0xb6e832a2 in QEventLoop::processEvents (this=0x82b26e0, flags=4) at
> | kernel/qeventloop_x11.cpp:192
> | #44 0xb6ef7255 in QEventLoop::enterLoop (this=0x82b26e0) at
> | kernel/qeventloop.cpp:198
> | #45 0xb6edd3b9 in QApplication::enter_loop (this=0xbfcf4588) at
> | kernel/qapplication.cpp:2793
> | #46 0xb7072071 in QPopupMenu::exec (this=0xbfcf3a48, pos=@0xbfcf3b30,
> | indexAtPoint=0) at widgets/qpopupmenu.cpp:2452
> | #47 0x0808a6b8 in MainWindow::Window::contextMenuEvent (this=0x8310af0,
> | e=0xbfcf3d0c) at
> | /home/chris/build/kimdaba/kphotoalbum-2.2.1/kphotoalbum/MainWindow/Window.c
> |pp:875 #48 0xb6f8313c in QWidget::event (this=0x8310af0, e=0xbfcf3d0c) at
> | kernel/qwidget.cpp:4826
> | #49 0xb7054bfc in QMainWindow::event (this=0x8310af0, e=0xbfcf3d0c) at
> | widgets/qmainwindow.cpp:1687
> | #50 0xb6ede87a in QApplication::internalNotify (this=0xbfcf4588,
> | receiver=0x8310af0, e=0xbfcf3d0c) at kernel/qapplication.cpp:2635
> | #51 0xb6edf271 in QApplication::notify (this=0xbfcf4588,
> | receiver=0xd195cd0, e=0xbfcf403c) at kernel/qapplication.cpp:2478
> | #52 0xb769952e in KApplication::notify () from /usr/lib/libkdecore.so.4
> | #53 0xb6e7006f in QApplication::sendSpontaneousEvent
> | (receiver=0xd195cd0, event=0xbfcf403c) at kernel/qapplication.h:523
> | #54 0xb6e6b801 in QETWidget::translateMouseEvent (this=0xd195cd0,
> | event=0xbfcf43b8) at kernel/qapplication_x11.cpp:4305
> | #55 0xb6e69c94 in QApplication::x11ProcessEvent (this=0xbfcf4588,
> | event=0xbfcf43b8) at kernel/qapplication_x11.cpp:3478
> | #56 0xb6e832a2 in QEventLoop::processEvents (this=0x82b26e0, flags=4) at
> | kernel/qeventloop_x11.cpp:192
> | #57 0xb6ef7255 in QEventLoop::enterLoop (this=0x82b26e0) at
> | kernel/qeventloop.cpp:198
> | #58 0xb6ef717a in QEventLoop::exec (this=0x82b26e0) at
> | kernel/qeventloop.cpp:145
> | #59 0xb6edd38d in QApplication::exec (this=0xbfcf4588) at
> | kernel/qapplication.cpp:2758
> | #60 0x08086153 in main (argc=1, argv=0xbfcf4774) at
> | /home/chris/build/kimdaba/kphotoalbum-2.2.1/kphotoalbum/main.cpp:74
> |
> | _______________________________________________
> | KPhotoAlbum mailing list
> | KPhotoAlbum-xItUb1CHQy4 at public.gmane.org
> | http://mail.kdab.net/mailman/listinfo/kphotoalbum
> 





More information about the Kphotoalbum mailing list