Hi folks,
Since about GtkBuilder come in into Geany core we are experiencing some issue with GeanyLaTeX in terms of in some cases the toolbar is not able tobe loaded and Geany is ending up inside a segfault. Most likely its repreducable by activating the toolbar and restarting Geany having a tex-file loaded. The issue seems to be located in near of line https://github.com/geany/geany-plugins/blob/master/geanylatex/src/geanylatex... unfortunately I don't have any bloody idea, what might is going wrong. Anyone else could jump in here?
Cheers, Frank
On 12/31/2011 02:57 AM, Frank Lanitz wrote:
Hi folks,
Since about GtkBuilder come in into Geany core we are experiencing some issue with GeanyLaTeX in terms of in some cases the toolbar is not able tobe loaded and Geany is ending up inside a segfault. Most likely its repreducable by activating the toolbar and restarting Geany having a tex-file loaded. The issue seems to be located in near of line https://github.com/geany/geany-plugins/blob/master/geanylatex/src/geanylatex... unfortunately I don't have any bloody idea, what might is going wrong. Anyone else could jump in here?
Can you post a full traceback from gdb with debugging symbols?
IIRC the toolbar was already using GtkBuilder and is not in the same .glade file as the rest of the UI (and theoretically shouldn't be affected by it).
Cheers, Matthew Brush
On Sat, 31 Dec 2011 03:04:13 -0800 Matthew Brush mbrush@codebrainz.ca wrote:
On 12/31/2011 02:57 AM, Frank Lanitz wrote:
Hi folks,
Since about GtkBuilder come in into Geany core we are experiencing some issue with GeanyLaTeX in terms of in some cases the toolbar is not able tobe loaded and Geany is ending up inside a segfault. Most likely its repreducable by activating the toolbar and restarting Geany having a tex-file loaded. The issue seems to be located in near of line https://github.com/geany/geany-plugins/blob/master/geanylatex/src/geanylatex... unfortunately I don't have any bloody idea, what might is going wrong. Anyone else could jump in here?
Can you post a full traceback from gdb with debugging symbols?
IIRC the toolbar was already using GtkBuilder and is not in the same .glade file as the rest of the UI (and theoretically shouldn't be affected by it).
Dammit. With current geany build I cannot reproduce the crash, only a huge number of warnings
Geany-INFO: Loaded: /home/frlan/local/lib/geany/geanylatex.so (GeanyLaTeX)
(geany:10190): Gtk-CRITICAL **: IA__gtk_action_get_sensitive: assertion `GTK_IS_ACTION (action)' failed (geany:10190): Gtk-CRITICAL **: IA__gtk_action_get_sensitive: assertion `GTK_IS_ACTION (action)' failed (geany:10190): Gtk-CRITICAL **: IA__gtk_action_get_sensitive: assertion `GTK_IS_ACTION (action)' failed (geany:10190): Gtk-CRITICAL **: IA__gtk_action_get_sensitive: assertion `GTK_IS_ACTION (action)' failed (geany:10190): Gtk-CRITICAL **: IA__gtk_action_get_sensitive: assertion `GTK_IS_ACTION (action)' failed (geany:10190): Gtk-CRITICAL **: IA__gtk_action_get_sensitive: assertion `GTK_IS_ACTION (action)' failed
After I activated the toolbar inside plugin configuration dialog I got:
Gtk-WARNING **: New: missing action New
Program received signal SIGTRAP, Trace/breakpoint trap. 0x00007ffff540b888 in g_logv () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 (gdb) bt #0 0x00007ffff540b888 in g_logv () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #1 0x00007ffff540bc02 in g_log () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007ffff79ebda2 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #3 0x00007ffff79eba05 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #4 0x00007ffff79eba05 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #5 0x00007ffff79ef431 in gtk_ui_manager_ensure_update () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #6 0x00007ffff79ef4a9 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #7 0x00007ffff0ab0ab9 in init_toolbar () at geanylatex.c:172 #8 0x00007ffff0ab3a47 in on_configure_response (dialog=<optimized out>, response=<optimized out>, user_data=<optimized out>) at geanylatex.c:253 #9 on_configure_response (dialog=<optimized out>, response=<optimized out>, user_data=<optimized out>) at geanylatex.c:183 #10 0x00007ffff5cd3804 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #11 0x00007ffff5ce578a in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #12 0x00007ffff5ceee11 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #13 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #14 0x00007ffff5cd3804 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #15 0x00007ffff5ce578a in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #16 0x00007ffff5ceee11 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #17 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #18 0x00007ffff7833dc5 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #19 0x00007ffff5cd375a in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #20 0x00007ffff5ce4f7a in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #21 0x00007ffff5ceee11 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #22 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #23 0x00007ffff7832bed in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #24 0x00007ffff78dc418 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #25 0x00007ffff5cd375a in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #26 0x00007ffff5ce55bf in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #27 0x00007ffff5ceebe3 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #28 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #29 0x00007ffff79f5301 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #30 0x00007ffff78da5d3 in gtk_propagate_event () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #31 0x00007ffff78da933 in gtk_main_do_event () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #32 0x00007ffff754621c in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 #33 0x00007ffff54030cf in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #34 0x00007ffff54038c8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #35 0x00007ffff5403e02 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #36 0x00007ffff786154b in gtk_dialog_run () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #37 0x00000000004f7ccf in configure_plugins (current_plugin=0xa41e50) at ../src/pluginutils.c:365 #38 0x00000000004f7d35 in plugin_show_configure (plugin=0xa41e80) at ../src/pluginutils.c:391 #39 0x000000000049cedc in pm_on_plugin_button_clicked (button=0xbfacc0, user_data=0x5) at ../src/plugins.c:1346 #40 0x00007ffff5cd3804 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #41 0x00007ffff5ce578a in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #42 0x00007ffff5ceee11 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #43 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #44 0x00007ffff7833dc5 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #45 0x00007ffff5cd3804 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #46 0x00007ffff5ce4f7a in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #47 0x00007ffff5ceee11 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 ---Type <return> to continue, or q <return> to quit--- #48 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #49 0x00007ffff7832bed in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #50 0x00007ffff78dc418 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #51 0x00007ffff5cd3804 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #52 0x00007ffff5ce55bf in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #53 0x00007ffff5ceebe3 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #54 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #55 0x00007ffff79f5301 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #56 0x00007ffff78da5d3 in gtk_propagate_event () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #57 0x00007ffff78da933 in gtk_main_do_event () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #58 0x00007ffff754621c in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 #59 0x00007ffff54030cf in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #60 0x00007ffff54038c8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #61 0x00007ffff5403e02 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #62 0x00007ffff78d9987 in gtk_main () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #63 0x00000000004e7d0f in main (argc=1, argv=0x7fffffffe878) at ../src/main.c:1157
However, the original bt looked like this before (gdb) bt #0 0xb75f118a in g_str_hash () from /lib/i386-linux-gnu/libglib-2.0.so.0 #1 0xb75bd7e8 in g_hash_table_lookup () from /lib/i386-linux-gnu/libglib-2.0.so.0 #2 0xb7bb8477 in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #3 0xb7bb8c0c in gtk_action_group_get_action () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #4 0xb7bb8c5a in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #5 0xb7bb99e9 in gtk_action_group_add_actions_full () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #6 0xb7bb9b8f in gtk_action_group_add_actions () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #7 0xaced6e9e in init_toolbar () at ../geanylatex/src/geanylatex.c:168 #8 0xacede1ab in plugin_init (data=0x8280920) at ../geanylatex/src/geanylatex.c:2343 #9 0x080d1596 in plugin_init (plugin=0x85ece88) at ../src/plugins.c:597 #10 0x080d1b34 in plugin_new ( fname=0x8603ee0 "/usr/local/lib/geany/geanylatex.so", init_plugin=1, add_to_list=1) at ../src/plugins.c:752 #11 0x080d2938 in pm_plugin_toggled (cell=0x841b970, pth=0x85244f8 "10", data=0x0) at ../src/plugins.c:1244 #12 0xb76a81e3 in g_cclosure_marshal_VOID__STRING () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #13 0xb76a63dc in g_closure_invoke () ---Type <return> to continue, or q <return> to quit--- from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #14 0xb76b9180 in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #15 0xb76c1f17 in g_signal_emit_valist () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #16 0xb76c2083 in g_signal_emit () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #17 0xb7be561d in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #18 0xb7bdbc02 in gtk_cell_renderer_activate () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #19 0xb7db9f39 in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #20 0xb7dba290 in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #21 0xb7dad24d in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #22 0xb7c908a2 in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #23 0xb76a4e2d in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #24 0xb76a63dc in g_closure_invoke () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #25 0xb76b8fc8 in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #26 0xb76c1d29 in g_signal_emit_valist () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
Cheers, Frank
Thanks,
Will check it out in a while and see if I can spot anything.
Cheers, Matthew Brush
On 12/31/2011 03:16 AM, Frank Lanitz wrote:
On Sat, 31 Dec 2011 03:04:13 -0800 Matthew Brushmbrush@codebrainz.ca wrote:
On 12/31/2011 02:57 AM, Frank Lanitz wrote:
Hi folks,
Since about GtkBuilder come in into Geany core we are experiencing some issue with GeanyLaTeX in terms of in some cases the toolbar is not able tobe loaded and Geany is ending up inside a segfault. Most likely its repreducable by activating the toolbar and restarting Geany having a tex-file loaded. The issue seems to be located in near of line https://github.com/geany/geany-plugins/blob/master/geanylatex/src/geanylatex... unfortunately I don't have any bloody idea, what might is going wrong. Anyone else could jump in here?
Can you post a full traceback from gdb with debugging symbols?
IIRC the toolbar was already using GtkBuilder and is not in the same .glade file as the rest of the UI (and theoretically shouldn't be affected by it).
Dammit. With current geany build I cannot reproduce the crash, only a huge number of warnings
Geany-INFO: Loaded: /home/frlan/local/lib/geany/geanylatex.so (GeanyLaTeX)
(geany:10190): Gtk-CRITICAL **: IA__gtk_action_get_sensitive: assertion `GTK_IS_ACTION (action)' failed (geany:10190): Gtk-CRITICAL **: IA__gtk_action_get_sensitive: assertion `GTK_IS_ACTION (action)' failed (geany:10190): Gtk-CRITICAL **: IA__gtk_action_get_sensitive: assertion `GTK_IS_ACTION (action)' failed (geany:10190): Gtk-CRITICAL **: IA__gtk_action_get_sensitive: assertion `GTK_IS_ACTION (action)' failed (geany:10190): Gtk-CRITICAL **: IA__gtk_action_get_sensitive: assertion `GTK_IS_ACTION (action)' failed (geany:10190): Gtk-CRITICAL **: IA__gtk_action_get_sensitive: assertion `GTK_IS_ACTION (action)' failed
After I activated the toolbar inside plugin configuration dialog I got:
Gtk-WARNING **: New: missing action New
Program received signal SIGTRAP, Trace/breakpoint trap. 0x00007ffff540b888 in g_logv () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 (gdb) bt #0 0x00007ffff540b888 in g_logv () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #1 0x00007ffff540bc02 in g_log () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007ffff79ebda2 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #3 0x00007ffff79eba05 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #4 0x00007ffff79eba05 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #5 0x00007ffff79ef431 in gtk_ui_manager_ensure_update () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #6 0x00007ffff79ef4a9 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #7 0x00007ffff0ab0ab9 in init_toolbar () at geanylatex.c:172 #8 0x00007ffff0ab3a47 in on_configure_response (dialog=<optimized out>, response=<optimized out>, user_data=<optimized out>) at geanylatex.c:253 #9 on_configure_response (dialog=<optimized out>, response=<optimized out>, user_data=<optimized out>) at geanylatex.c:183 #10 0x00007ffff5cd3804 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #11 0x00007ffff5ce578a in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #12 0x00007ffff5ceee11 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #13 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #14 0x00007ffff5cd3804 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #15 0x00007ffff5ce578a in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #16 0x00007ffff5ceee11 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #17 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #18 0x00007ffff7833dc5 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #19 0x00007ffff5cd375a in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #20 0x00007ffff5ce4f7a in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #21 0x00007ffff5ceee11 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #22 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #23 0x00007ffff7832bed in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #24 0x00007ffff78dc418 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #25 0x00007ffff5cd375a in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #26 0x00007ffff5ce55bf in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #27 0x00007ffff5ceebe3 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #28 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #29 0x00007ffff79f5301 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #30 0x00007ffff78da5d3 in gtk_propagate_event () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #31 0x00007ffff78da933 in gtk_main_do_event () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #32 0x00007ffff754621c in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 #33 0x00007ffff54030cf in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #34 0x00007ffff54038c8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #35 0x00007ffff5403e02 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #36 0x00007ffff786154b in gtk_dialog_run () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #37 0x00000000004f7ccf in configure_plugins (current_plugin=0xa41e50) at ../src/pluginutils.c:365 #38 0x00000000004f7d35 in plugin_show_configure (plugin=0xa41e80) at ../src/pluginutils.c:391 #39 0x000000000049cedc in pm_on_plugin_button_clicked (button=0xbfacc0, user_data=0x5) at ../src/plugins.c:1346 #40 0x00007ffff5cd3804 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #41 0x00007ffff5ce578a in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #42 0x00007ffff5ceee11 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #43 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #44 0x00007ffff7833dc5 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #45 0x00007ffff5cd3804 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #46 0x00007ffff5ce4f7a in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #47 0x00007ffff5ceee11 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 ---Type<return> to continue, or q<return> to quit--- #48 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #49 0x00007ffff7832bed in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #50 0x00007ffff78dc418 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #51 0x00007ffff5cd3804 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #52 0x00007ffff5ce55bf in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #53 0x00007ffff5ceebe3 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #54 0x00007ffff5ceefb2 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #55 0x00007ffff79f5301 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #56 0x00007ffff78da5d3 in gtk_propagate_event () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #57 0x00007ffff78da933 in gtk_main_do_event () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #58 0x00007ffff754621c in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 #59 0x00007ffff54030cf in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #60 0x00007ffff54038c8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #61 0x00007ffff5403e02 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #62 0x00007ffff78d9987 in gtk_main () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #63 0x00000000004e7d0f in main (argc=1, argv=0x7fffffffe878) at ../src/main.c:1157
However, the original bt looked like this before (gdb) bt #0 0xb75f118a in g_str_hash () from /lib/i386-linux-gnu/libglib-2.0.so.0 #1 0xb75bd7e8 in g_hash_table_lookup () from /lib/i386-linux-gnu/libglib-2.0.so.0 #2 0xb7bb8477 in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #3 0xb7bb8c0c in gtk_action_group_get_action () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #4 0xb7bb8c5a in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #5 0xb7bb99e9 in gtk_action_group_add_actions_full () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #6 0xb7bb9b8f in gtk_action_group_add_actions () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #7 0xaced6e9e in init_toolbar () at ../geanylatex/src/geanylatex.c:168 #8 0xacede1ab in plugin_init (data=0x8280920) at ../geanylatex/src/geanylatex.c:2343 #9 0x080d1596 in plugin_init (plugin=0x85ece88) at ../src/plugins.c:597 #10 0x080d1b34 in plugin_new ( fname=0x8603ee0 "/usr/local/lib/geany/geanylatex.so", init_plugin=1, add_to_list=1) at ../src/plugins.c:752 #11 0x080d2938 in pm_plugin_toggled (cell=0x841b970, pth=0x85244f8 "10", data=0x0) at ../src/plugins.c:1244 #12 0xb76a81e3 in g_cclosure_marshal_VOID__STRING () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #13 0xb76a63dc in g_closure_invoke () ---Type<return> to continue, or q<return> to quit--- from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #14 0xb76b9180 in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #15 0xb76c1f17 in g_signal_emit_valist () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #16 0xb76c2083 in g_signal_emit () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #17 0xb7be561d in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #18 0xb7bdbc02 in gtk_cell_renderer_activate () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #19 0xb7db9f39 in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #20 0xb7dba290 in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #21 0xb7dad24d in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #22 0xb7c908a2 in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 #23 0xb76a4e2d in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #24 0xb76a63dc in g_closure_invoke () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #25 0xb76b8fc8 in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 #26 0xb76c1d29 in g_signal_emit_valist () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
Cheers, Frank
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
On Sat, 31 Dec 2011 04:09:36 -0800 Matthew Brush mbrush@codebrainz.ca wrote:
Will check it out in a while and see if I can spot anything.
Would be cool as I really don't have any clue what might can be broken. I assume its some issue on my code ... but :D
Cheers, Frank
On 12/31/2011 02:57 AM, Frank Lanitz wrote:
Hi folks,
Since about GtkBuilder come in into Geany core we are experiencing some issue with GeanyLaTeX in terms of in some cases the toolbar is not able tobe loaded and Geany is ending up inside a segfault. Most likely its repreducable by activating the toolbar and restarting Geany having a tex-file loaded. The issue seems to be located in near of line https://github.com/geany/geany-plugins/blob/master/geanylatex/src/geanylatex... unfortunately I don't have any bloody idea, what might is going wrong. Anyone else could jump in here?
Attached is a patch to fix the issue. It's the same bug in Geany where this code was probably copied from, so I'll fix Geany and leave it to you to apply this patch to the plugin. If either Geany or GeanyLatex is fixed the plugin will be fixed, but for correctness I guess they should both be fixed.
IIUC what's happening is Geany's variable (toolbar.c:toolbar_markup) is declared const but not static so it's global to the entire program. When the plugin is loaded (at runtime with dlopen) with the same variable name also declared const, the one previously defined in Geany is used instead. If Geany's is declared static, GeanyLatex uses it's own variable because it can't see Geany's, if it's declared static in GeanyLatex, the local scope wins I guess.
So what was happening was GeanyLatex was loading Geany's toolbar XML string constant instead of it's own (which obviously is a problem).
I'd love to know why this changed all of the sudden though, why it's different from before.
Cheers, Matthew Brush
On 01/03/2012 08:45 AM, Matthew Brush wrote:
On 12/31/2011 02:57 AM, Frank Lanitz wrote:
Hi folks,
Since about GtkBuilder come in into Geany core we are experiencing some issue with GeanyLaTeX in terms of in some cases the toolbar is not able tobe loaded and Geany is ending up inside a segfault. Most likely its repreducable by activating the toolbar and restarting Geany having a tex-file loaded. The issue seems to be located in near of line https://github.com/geany/geany-plugins/blob/master/geanylatex/src/geanylatex...
unfortunately I don't have any bloody idea, what might is going wrong. Anyone else could jump in here?
Attached is a patch to fix the issue. It's the same bug in Geany where this code was probably copied from, so I'll fix Geany and leave it to you to apply this patch to the plugin. If either Geany or GeanyLatex is fixed the plugin will be fixed, but for correctness I guess they should both be fixed.
IIUC what's happening is Geany's variable (toolbar.c:toolbar_markup) is declared const but not static so it's global to the entire program. When the plugin is loaded (at runtime with dlopen) with the same variable name also declared const, the one previously defined in Geany is used instead. If Geany's is declared static, GeanyLatex uses it's own variable because it can't see Geany's, if it's declared static in GeanyLatex, the local scope wins I guess.
So what was happening was GeanyLatex was loading Geany's toolbar XML string constant instead of it's own (which obviously is a problem).
I'd love to know why this changed all of the sudden though, why it's different from before.
I fixed in Geany in this commit:
https://github.com/geany/geany/commit/8f489fc9fbab8a8c197f40536fac8ebd74c430...
So if you pull from Geany's repo and rebuild, even before applying the patch, the toolbar problem should be fixed, but probably best to apply the same changes as in that commit the plugin as well.
Cheers, Matthew Brush
On Tue, 03 Jan 2012 09:01:06 -0800 Matthew Brush mbrush@codebrainz.ca wrote:
On 01/03/2012 08:45 AM, Matthew Brush wrote:
On 12/31/2011 02:57 AM, Frank Lanitz wrote:
Hi folks,
Since about GtkBuilder come in into Geany core we are experiencing some issue with GeanyLaTeX in terms of in some cases the toolbar is not able tobe loaded and Geany is ending up inside a segfault. Most likely its repreducable by activating the toolbar and restarting Geany having a tex-file loaded. The issue seems to be located in near of line https://github.com/geany/geany-plugins/blob/master/geanylatex/src/geanylatex...
unfortunately I don't have any bloody idea, what might is going wrong. Anyone else could jump in here?
Attached is a patch to fix the issue. It's the same bug in Geany where this code was probably copied from, so I'll fix Geany and leave it to you to apply this patch to the plugin. If either Geany or GeanyLatex is fixed the plugin will be fixed, but for correctness I guess they should both be fixed.
IIUC what's happening is Geany's variable (toolbar.c:toolbar_markup) is declared const but not static so it's global to the entire program. When the plugin is loaded (at runtime with dlopen) with the same variable name also declared const, the one previously defined in Geany is used instead. If Geany's is declared static, GeanyLatex uses it's own variable because it can't see Geany's, if it's declared static in GeanyLatex, the local scope wins I guess.
So what was happening was GeanyLatex was loading Geany's toolbar XML string constant instead of it's own (which obviously is a problem).
I'd love to know why this changed all of the sudden though, why it's different from before.
I fixed in Geany in this commit:
https://github.com/geany/geany/commit/8f489fc9fbab8a8c197f40536fac8ebd74c430...
So if you pull from Geany's repo and rebuild, even before applying the patch, the toolbar problem should be fixed, but probably best to apply the same changes as in that commit the plugin as well.
Thanks for the finding. I've applied it locally and will give it a test.
Cheers, Frank
On Tue, 03 Jan 2012 08:45:38 -0800 Matthew Brush mbrush@codebrainz.ca wrote:
On 12/31/2011 02:57 AM, Frank Lanitz wrote:
Hi folks,
Since about GtkBuilder come in into Geany core we are experiencing some issue with GeanyLaTeX in terms of in some cases the toolbar is not able tobe loaded and Geany is ending up inside a segfault. Most likely its repreducable by activating the toolbar and restarting Geany having a tex-file loaded. The issue seems to be located in near of line https://github.com/geany/geany-plugins/blob/master/geanylatex/src/geanylatex... unfortunately I don't have any bloody idea, what might is going wrong. Anyone else could jump in here?
Attached is a patch to fix the issue. It's the same bug in Geany where this code was probably copied from, so I'll fix Geany and leave it to you to apply this patch to the plugin. If either Geany or GeanyLatex is fixed the plugin will be fixed, but for correctness I guess they should both be fixed.
IIUC what's happening is Geany's variable (toolbar.c:toolbar_markup) is declared const but not static so it's global to the entire program. When the plugin is loaded (at runtime with dlopen) with the same variable name also declared const, the one previously defined in Geany is used instead. If Geany's is declared static, GeanyLatex uses it's own variable because it can't see Geany's, if it's declared static in GeanyLatex, the local scope wins I guess.
So what was happening was GeanyLatex was loading Geany's toolbar XML string constant instead of it's own (which obviously is a problem).
Yepp. Sounds legit.
I'd love to know why this changed all of the sudden though, why it's different from before.
Me too ;)