Strange behavior from GLib Single Linked Lists in V1.2
- From: Jim Parker <hopeye cfl rr com>
- To: gtk-app-devel-list gnome org
- Subject: Strange behavior from GLib Single Linked Lists in V1.2
- Date: Fri, 1 Aug 2003 13:16:07 -0400
G'Day !
I recently added some routines to my code base that stores a list of
structs in a GLIB single linked list. This code is fairly straight
forward and the basic template has been used for various lists within
the program for the last 2 years, so I'm pretty sure it works.
This new list however has been giving SEGFAULTS when loading data into
the list at arbitray times. Thes SEGFAULTS occur about 50% of the time
it is run and only on this list.
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 17801)]
0x40194582 in g_slist_last () from /usr/lib/libglib-1.2.so.0
(gdb) backtrace
#0 0x40194582 in g_slist_last () from /usr/lib/libglib-1.2.so.0
#1 0x4019421d in g_slist_append () from /usr/lib/libglib-1.2.so.0
#2 0x0805e0b7 in gtkcad_create_part (list=0x7b005c, part_id=1,
part_name=0xbfffeeb0 "Main Hull", visible=1, locked=0, vertex_id=20,
x=0, y=0, z=0, vector_id=1, i=0, j=0, k=1) at
UI/gtkcad_ui_parts_dialog.c:502
#3 0x08076732 in db_get_part_list () at DB/gtkcad_db_parts_ecpg.pgc:296
#4 0x08070f28 in db_open () at DB/gtkcad_db_postgresql_ecpg.pgc:306
#5 0x08053464 in gtkcad_db_submit_data (widget=0x80c6108,
data=0x80d2f48)
at UI/gtkcad_ui_database_dialog.c:129
#6 0x400ad1b5 in gtk_marshal_NONE__NONE () from
/usr/lib/libgtk-1.2.so.0
#7 0x400dcb6c in gtk_signal_remove_emission_hook ()
from /usr/lib/libgtk-1.2.so.0
#8 0x400dbfd5 in gtk_signal_set_funcs () from /usr/lib/libgtk-1.2.so.0
#9 0x400da0b3 in gtk_signal_emit () from /usr/lib/libgtk-1.2.so.0
#10 0x4004b068 in gtk_button_clicked () from /usr/lib/libgtk-1.2.so.0
#11 0x4004c5ed in gtk_button_get_relief () from /usr/lib/libgtk-1.2.so.0
#12 0x400ad1b5 in gtk_marshal_NONE__NONE () from
/usr/lib/libgtk-1.2.so.0
#13 0x400dbe6f in gtk_signal_set_funcs () from /usr/lib/libgtk-1.2.so.0
#14 0x400da0b3 in gtk_signal_emit () from /usr/lib/libgtk-1.2.so.0
#15 0x4004afa8 in gtk_button_released () from /usr/lib/libgtk-1.2.so.0
#16 0x4004bf58 in gtk_button_get_relief () from /usr/lib/libgtk-1.2.so.0
#17 0x400ace3f in gtk_marshal_BOOL__POINTER () from
/usr/lib/libgtk-1.2.so.0
#18 0x400dc013 in gtk_signal_set_funcs () from /usr/lib/libgtk-1.2.so.0
#19 0x400da0b3 in gtk_signal_emit () from /usr/lib/libgtk-1.2.so.0
#20 0x40110acb in gtk_widget_event () from /usr/lib/libgtk-1.2.so.0
#21 0x400acd85 in gtk_propagate_event () from /usr/lib/libgtk-1.2.so.0
#22 0x400abeee in gtk_main_do_event () from /usr/lib/libgtk-1.2.so.0
#23 0x4015a457 in gdk_wm_protocols_filter () from
/usr/lib/libgdk-1.2.so.0
#24 0x4018b4d8 in g_get_current_time () from /usr/lib/libglib-1.2.so.0
#25 0x4018bae3 in g_get_current_time () from /usr/lib/libglib-1.2.so.0
#26 0x4018bc7c in g_main_run () from /usr/lib/libglib-1.2.so.0
#27 0x400ab7e7 in gtk_main () from /usr/lib/libgtk-1.2.so.0
#28 0x080519a7 in main (argc=1, argv=0xbffffd54) at GtkCAD.c:320
(gdb)
the struct in question looks like this:
typdef struct {
gint id;
gchar name[25];
gint *vertex; /* pointer to a struct containing a vertex x, y, z
info */
gint *vector; /* pointer to a struct containing a vertex i, j, k
info */
gint visible;
gint locked;
} typPart;
Does anyone have any ideas ?
TIA
cheers,
Jim Parker
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]