Menu

#58 Granule crashes when deleting the last card in the deck view

v1.2.x
closed
5
2012-08-25
2006-09-08
Ian Lewis
No

You can reproduce this by clicking on a card box. Click
View/Edit Deck. Then Delete the last entry. Granule
crashes.

Version 1.2.1

Backtrace below:

ian@gazelle:~$ gdb granule
GNU gdb 6.4-debian
Copyright 2005 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public
License, and you are
welcome to change it and/or distribute copies of it
under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show
warranty" for details.
This GDB was configured as "x86_64-linux-gnu"...Using
host libthread_db library "/lib/libthread_db.so.1".

(gdb) run
Starting program: /usr/local/bin/granule

(granule:27733): Gdk-WARNING **: cannot set locale
modifiers

Program received signal SIGSEGV, Segmentation fault.
0x00002aaaadee99b0 in memcpy () from /lib/libc.so.6
(gdb) bt

0 0x00002aaaadee99b0 in memcpy () from /lib/libc.so.6

1 0x00002aaaadee91b3 in memmove () from /lib/libc.so.6

2 0x00000000004215bc in std::vector<VCard*,

std::allocator<VCard*> >::erase (
this=0x6ee590, __position=<value optimized="" out="">) at
stl_algobase.h:300

3 0x000000000042481a in CardDeck::erase (this=<value

optimized out>, iter_=
{_M_current = 0xa49588}) at CardDeck.h:160

4 0x000000000042003b in CardDeck::erase

(this=0x6ee580, vcard_=0xa4c900)
at CardDeck.cpp:63

5 0x00000000004412a9 in DeckView::on_delete_clicked

(this=0x7fffffa6ce20)
at DeckView.cpp:484

6 0x00002aaaab9dd282 in

Glib::SignalProxyNormal::slot0_void_callback ()
from /usr/lib/libglibmm-2.4.so.1

7 0x00002aaaad1b7910 in g_closure_invoke () from

/usr/lib/libgobject-2.0.so.0

8 0x00002aaaad1c6e8f in g_signal_stop_emission ()

from /usr/lib/libgobject-2.0.so.0

9 0x00002aaaad1c7fcc in g_signal_emit_valist ()

from /usr/lib/libgobject-2.0.so.0

10 0x00002aaaad1c8383 in g_signal_emit () from

/usr/lib/libgobject-2.0.so.0

11 0x00002aaaab4c6cb7 in _gtk_button_set_depressed ()

from /usr/lib/libgtk-x11-2.0.so.0

12 0x00002aaaad1b7910 in g_closure_invoke () from

/usr/lib/libgobject-2.0.so.0

13 0x00002aaaad1c6630 in g_signal_stop_emission ()

from /usr/lib/libgobject-2.0.so.0
---Type <return> to continue, or q <return> to quit---

14 0x00002aaaad1c7fcc in g_signal_emit_valist ()

from /usr/lib/libgobject-2.0.so.0

15 0x00002aaaad1c8383 in g_signal_emit () from

/usr/lib/libgobject-2.0.so.0

16 0x00002aaaab4c6269 in _gtk_button_paint ()

from /usr/lib/libgtk-x11-2.0.so.0

17 0x00002aaaab57f910 in _gtk_marshal_BOOLEAN__BOXED ()

from /usr/lib/libgtk-x11-2.0.so.0

18 0x00002aaaad1b7910 in g_closure_invoke () from

/usr/lib/libgobject-2.0.so.0

19 0x00002aaaad1c6c9d in g_signal_stop_emission ()

from /usr/lib/libgobject-2.0.so.0

20 0x00002aaaad1c7d0c in g_signal_emit_valist ()

from /usr/lib/libgobject-2.0.so.0

21 0x00002aaaad1c8383 in g_signal_emit () from

/usr/lib/libgobject-2.0.so.0

22 0x00002aaaab65e625 in gtk_widget_activate ()

from /usr/lib/libgtk-x11-2.0.so.0

23 0x00002aaaab57dd1b in gtk_propagate_event ()

from /usr/lib/libgtk-x11-2.0.so.0

24 0x00002aaaab57e197 in gtk_main_do_event ()

from /usr/lib/libgtk-x11-2.0.so.0

25 0x00002aaaabc432ac in _gdk_events_queue ()

from /usr/lib/libgdk-x11-2.0.so.0

26 0x00002aaaad418bfd in g_main_context_dispatch ()

from /usr/lib/libglib-2.0.so.0
---Type <return> to continue, or q <return> to quit---

27 0x00002aaaad41bec5 in g_main_context_check ()

from /usr/lib/libglib-2.0.so.0

28 0x00002aaaad41c18a in g_main_loop_run () from

/usr/lib/libglib-2.0.so.0

29 0x00002aaaab50c5ca in gtk_dialog_run () from

/usr/lib/libgtk-x11-2.0.so.0

30 0x000000000044dad2 in DeckPlayer::on_edit_clicked

(this=0xa4d930)
at DeckPlayer.cpp:1154

31 0x00002aaaab9dd282 in

Glib::SignalProxyNormal::slot0_void_callback ()
from /usr/lib/libglibmm-2.4.so.1

32 0x00002aaaad1b7910 in g_closure_invoke () from

/usr/lib/libgobject-2.0.so.0

33 0x00002aaaad1c6e8f in g_signal_stop_emission ()

from /usr/lib/libgobject-2.0.so.0

34 0x00002aaaad1c7fcc in g_signal_emit_valist ()

from /usr/lib/libgobject-2.0.so.0

35 0x00002aaaad1c8383 in g_signal_emit () from

/usr/lib/libgobject-2.0.so.0

36 0x00002aaaab4c6cb7 in _gtk_button_set_depressed ()

from /usr/lib/libgtk-x11-2.0.so.0

37 0x00002aaaaaf43510 in

Gtk::Button_Class::released_callback ()
from /usr/lib/libgtkmm-2.4.so.1

38 0x00002aaaad1b7910 in g_closure_invoke () from

/usr/lib/libgobject-2.0.so.0

39 0x00002aaaad1c6630 in g_signal_stop_emission ()

from /usr/lib/libgobject-2.0.so.0

40 0x00002aaaad1c7fcc in g_signal_emit_valist ()

from /usr/lib/libgobject-2.0.so.0
---Type <return> to continue, or q <return> to quit---

41 0x00002aaaad1c8383 in g_signal_emit () from

/usr/lib/libgobject-2.0.so.0

42 0x00002aaaab4c6269 in _gtk_button_paint ()

from /usr/lib/libgtk-x11-2.0.so.0

43 0x00002aaaaafd0be2 in

Gtk::Widget::on_button_release_event ()
from /usr/lib/libgtkmm-2.4.so.1

44 0x00002aaaaafcd257 in

Gtk::Widget_Class::button_release_event_callback ()
from /usr/lib/libgtkmm-2.4.so.1

45 0x00002aaaab57f910 in _gtk_marshal_BOOLEAN__BOXED ()

from /usr/lib/libgtk-x11-2.0.so.0

46 0x00002aaaad1b7910 in g_closure_invoke () from

/usr/lib/libgobject-2.0.so.0

47 0x00002aaaad1c6c9d in g_signal_stop_emission ()

from /usr/lib/libgobject-2.0.so.0

48 0x00002aaaad1c7d0c in g_signal_emit_valist ()

from /usr/lib/libgobject-2.0.so.0

49 0x00002aaaad1c8383 in g_signal_emit () from

/usr/lib/libgobject-2.0.so.0

50 0x00002aaaab65e625 in gtk_widget_activate ()

from /usr/lib/libgtk-x11-2.0.so.0

51 0x00002aaaab57dd1b in gtk_propagate_event ()

from /usr/lib/libgtk-x11-2.0.so.0

52 0x00002aaaab57e197 in gtk_main_do_event ()

from /usr/lib/libgtk-x11-2.0.so.0

53 0x00002aaaabc432ac in _gdk_events_queue ()

from /usr/lib/libgdk-x11-2.0.so.0
---Type <return> to continue, or q <return> to quit---

54 0x00002aaaad418bfd in g_main_context_dispatch ()

from /usr/lib/libglib-2.0.so.0

55 0x00002aaaad41bec5 in g_main_context_check ()

from /usr/lib/libglib-2.0.so.0

56 0x00002aaaad41c18a in g_main_loop_run () from

/usr/lib/libglib-2.0.so.0

57 0x00002aaaab50c5ca in gtk_dialog_run () from

/usr/lib/libgtk-x11-2.0.so.0

58 0x0000000000430865 in CardBox::play_deck

(this=0x6ee4d0, idx_=1)
at CardBox.cpp:590

59 0x00000000004ada3b in MainWindow::play_in_box

(this=0x68f550, idx_=1)
at MainWindow.cpp:708

60 0x000000000042e6c0 in CardBox::play_in_box_cb

(this=0x6ee4d0,
event=<value optimized="" out="">, idx_=1) at CardBox.cpp:742

61 0x0000000000437690 in

sigc::internal::slot_call1<sigc::bind_functor<-1, sigc::bound_mem_functor2<bool,="" CardBox,="" _GdkEventButton*,="" int="">, int, sigc::nil, sigc::nil,
sigc::nil, sigc::nil, sigc::nil, sigc::nil>, bool,
_GdkEventButton*>::call_it (rep=0x0, a_1=<value optimized="" out="">) at mem_fun.h:1917

62 0x00002aaaaafd4fbf in Gtk::Widget::get_visual ()

from /usr/lib/libgtkmm-2.4.so.1

63 0x00002aaaab57f910 in _gtk_marshal_BOOLEAN__BOXED ()

from /usr/lib/libgtk-x11-2.0.so.0

64 0x00002aaaad1b7910 in g_closure_invoke () from

/usr/lib/libgobject-2.0.so.0

65 0x00002aaaad1c6e8f in g_signal_stop_emission ()

from /usr/lib/libgobject-2.0.so.0
---Type <return> to continue, or q <return> to quit---

66 0x00002aaaad1c7d0c in g_signal_emit_valist ()

from /usr/lib/libgobject-2.0.so.0

67 0x00002aaaad1c8383 in g_signal_emit () from

/usr/lib/libgobject-2.0.so.0

68 0x00002aaaab65e625 in gtk_widget_activate ()

from /usr/lib/libgtk-x11-2.0.so.0

69 0x00002aaaab57dd1b in gtk_propagate_event ()

from /usr/lib/libgtk-x11-2.0.so.0

70 0x00002aaaab57e197 in gtk_main_do_event ()

from /usr/lib/libgtk-x11-2.0.so.0

71 0x00002aaaabc432ac in _gdk_events_queue ()

from /usr/lib/libgdk-x11-2.0.so.0

72 0x00002aaaad418bfd in g_main_context_dispatch ()

from /usr/lib/libglib-2.0.so.0

73 0x00002aaaad41bec5 in g_main_context_check ()

from /usr/lib/libglib-2.0.so.0

74 0x00002aaaad41c18a in g_main_loop_run () from

/usr/lib/libglib-2.0.so.0

75 0x00002aaaab57d582 in gtk_main () from

/usr/lib/libgtk-x11-2.0.so.0

76 0x00002aaaaaf7a230 in Gtk::Main::run () from

/usr/lib/libgtkmm-2.4.so.1

77 0x00000000004b0e59 in Granule::process_events

(this=0x62da40)
at Granule.cpp:348

78 0x00000000004b2a23 in main (argc=1,

argv=0x7fffffa6f0f8)
at Granule-main.cpp:129
(gdb)

Discussion

  • Vladislav Grinchenko

    Logged In: YES
    user_id=616697

    Confirmed. Thanks for the report.

     
  • Vladislav Grinchenko

    Logged In: YES
    user_id=616697

    Fixed in CVS. The fix will appear in upcoming v1.2.2.

     

Log in to post a comment.