coredump. dbx shows gtk internal functions.

coredump. dbx shows gtk internal functions. i cant figure out where &
why it happens.Please help


I am runnign a multithreaded gtk program, i have followed all the
guidlince for gtk+ with multithreading

gdk_enter(), gdk_leave(). etc

The program does coredump, which is not reprodusable.

Its a multithreaded program, with main thread, taking care of lots of
gui, the secondary threads ,taking care of creating tcp sockets &  using
the gui occasinally to display the messages comming through the tcp

when i debug using dbx, "where"
the most frequent one is this


can anyone please tell, where there could be a problem


[1] g_type_check_instance_is_a(0x6a678, 0x50a10, 0xfefce024, 0x7800,
0xff264cc4, 0x7a28), at 0xfefce02c
  [2] gtk_container_propagate_expose(0x62760, 0x6a678, 0xffbedf9c,
0xffbed970, 0x1d9528, 0x6a678), at 0xff08b818
  [3] gtk_container_expose(0x62760, 0x13bc, 0x1000, 0x1d9804,
0xff0f83f8, 0xff264cc4), at 0xff08b5e8
  [4] gtk_menu_item_expose(0x62760, 0xffbedf9c, 0x3800, 0x16c76c,
0xfefeaa54, 0xff27b9dc), at 0xff0f868c
  [5] _gtk_marshal_BOOLEAN__BOXED(0x54b08, 0x17968c, 0x50a10,
0xffbedcf0, 0x62760, 0xff0f8554), at 0xff0eb730
  [6] g_closure_invoke(0x54b08, 0xffbedba8, 0x2, 0xffbedcf0, 0xffbedb94,
0x3), at 0xfefab5d4
  [7] signal_emit_unlocked_R(0x62068, 0xfef82d6c, 0xfef82d70,
0xfef82d68, 0x0, 0xfefeaa54), at 0xfefc33a4
  [8] g_signal_emit_valist(0x0, 0xffbedd08, 0xffbedf20, 0xfefeaa54,
0x53c60, 0xfef82d70), at 0xfefc1668
  [9] gtk_signal_emit(0x62760, 0x20, 0xffbedf9c, 0x12fd2c, 0x61658,
0xff264cc4), at 0xff135024
  [10] gtk_widget_event_internal(0x62760, 0xffbedf9c, 0xff1d94a0, 0x234,
0xc, 0x1a), at 0xff1d9700
  [11] gtk_container_propagate_expose(0xffbedfa0, 0x62760, 0xffbee708,
0x1, 0x1d9528, 0x62760), at 0xff08b9e0
  [12] gtk_menu_shell_forall(0x610f8, 0x0, 0xff08b490, 0xffbee080,
0x169a44, 0x1db974), at 0xff0fb360
  [13] gtk_container_expose(0x610f8, 0x13bc, 0x1000, 0x1d9804,
0xff0f65e0, 0xff264cc4), at 0xff08b5e8
  [14] gtk_menu_bar_expose(0x610f8, 0xffbee708, 0x3400, 0x16e6d0,
0xfefeaa54, 0xff276e1c), at 0xff0f6728
  [15] _gtk_marshal_BOOLEAN__BOXED(0x54b08, 0x17968c, 0x50a10,
0xffbee400, 0x610f8, 0xff0f65f0), at 0xff0eb730
  [16] g_closure_invoke(0x54b08, 0xffbee2b8, 0x2, 0xffbee400,
0xffbee2a4, 0x2), at 0xfefab554
  [17] signal_emit_unlocked_R(0x60e20, 0xfef82d6c, 0xfef82d70,
0xfef82d68, 0x0, 0xfefeaa54), at 0xfefc33a4
  [18] g_signal_emit_valist(0x0, 0xffbee418, 0xffbee630, 0xfefeaa54,
0x53c60, 0xfef82d70), at 0xfefc1668
  [19] gtk_signal_emit(0x610f8, 0x20, 0xffbee708, 0x12fd2c, 0x5a5b8,
0xff264cc4), at 0xff135024
  [20] gtk_widget_event_internal(0x610f8, 0xffbee708, 0xff1d94a0, 0x234,
0xc, 0x1a), at 0xff1d9700
  [21] gtk_main_do_event(0x0, 0xffbee708, 0xff0e9dcc, 0x610f8, 0x328,
0xc), at 0xff0ea13c
  [22] gdk_window_process_updates_internal(0xa7478, 0x1000, 0x1,
0xfef3e090, 0x1ce6a8, 0xff2fc050), at 0xff2ad58c
  [23] gdk_window_process_all_updates(0x1000, 0x4b9d4, 0x12ac, 0x400,
0xff2f8fb0, 0x67c), at 0xff2ad648
  [24] gdk_window_update_idle(0x0, 0xff2fc088, 0x0, 0x1000, 0x1,
0x128c), at 0xff2ad6e0
  [25] g_main_dispatch(0x4f850, 0xfec5b28c, 0x1000, 0x0, 0xfef80528,
0x4f858), at 0xfef27e94
  [26] g_main_context_dispatch(0x4f850, 0x1, 0xfef82d6c, 0x101c,
0xfef82d68, 0x2), at 0xfef291fc
  [27] g_main_context_iterate(0x4f850, 0x1, 0x1, 0x1, 0x4f858, 0xa2e18),
at 0xfef2960c
  [28] g_main_loop_run(0xa2e00, 0x1000, 0x0, 0xfef82d6c, 0x392d8,
0xfef82d70), at 0xfef29f18
  [29] gtk_main(0x8398, 0x8000, 0xa2e00, 0xfef82d70, 0xff276de4,
0xfec5b28c), at 0xff0e9600
  [30] main(0x35400, 0x35800, 0x35800, 0x1fc00, 0x35800, 0x0), at

another frequent  coredump happens when the execution is inside main.

main(  (int argc, char *argv[])
gdk_threads_enter ();
  gtk_main ();
  gdk_threads_leave ();

  return 0;

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]