Re: balsa crash identified
- From: Frederick Ros <Frederick Ros ulticom com>
- To: joaquim hrnet fr
- Cc: balsa-list gnome org
- Subject: Re: balsa crash identified
- Date: Tue, 25 Jul 2000 09:18:22 +0200
Here is what I have understodd just looking quickly at the code (so much
work .. :( )
The object BalsaMessage contains a pointer to a LibBalsaMessage object.
When the main window receives the destroy event, it handles it, and at
some point the function libbalsa_mailbox_real_close is called, which in
return calls
libbalsa_mailbox_free_messages. This last function gets all the
LibBalsaMessage of the mailbox and destroy it.
As this message is destroyed the message_destroyed_cb function is
called, which is used to set the LibBalsaMessage pointer of the
BalsaMessage to NULL (using balsa_message_set). But at this point the
pointer is already set to 0x80 .. So it lands to a SIGSEGV ..
Here's the dump of the stakc I have :
Program received signal SIGSEGV, Segmentation fault.
0x807fe86 in libbalsa_message_body_unref (message=0x80) at message.c:678
678 g_return_if_fail ( LIBBALSA_IS_MESSAGE (message) );
(gdb) where
#0 0x807fe86 in libbalsa_message_body_unref (message=0x80) at
message.c:678
#1 0x8061fd2 in balsa_message_set (bm=0x813f278, message=0x0)
at balsa-message.c:344
#2 0x8061f2c in message_destroyed_cb (message=0x815fe50, bm=0x813f278)
at balsa-message.c:315
#3 0x401eed67 in gtk_marshal_NONE__NONE (object=0x815fe50,
func=0x8061f18 <message_destroyed_cb>, func_data=0x813f278,
args=0xbfffea00) at gtkmarshal.c:312
#4 0x4021eae8 in gtk_handlers_run (handlers=0x8149e80,
signal=0xbfffe9ac,
object=0x815fe50, params=0xbfffea00, after=0) at gtksignal.c:1917
#5 0x4021deff in gtk_signal_real_emit (object=0x815fe50, signal_id=1,
params=0xbfffea00) at gtksignal.c:1477
#6 0x4021bef7 in gtk_signal_emit (object=0x815fe50, signal_id=1)
at gtksignal.c:552
#7 0x402005bc in gtk_object_shutdown (object=0x815fe50) at
gtkobject.c:255
#8 0x4020055a in gtk_object_destroy (object=0x815fe50) at
gtkobject.c:246
#9 0x8082f08 in libbalsa_mailbox_free_messages (mailbox=0x8104288)
at mailbox.c:657
#10 0x808299f in libbalsa_mailbox_real_close (mailbox=0x8104288)
at mailbox.c:492
#11 0x401eed67 in gtk_marshal_NONE__NONE (object=0x8104288,
func=0x8082924 <libbalsa_mailbox_real_close>, func_data=0x0,
args=0xbfffee20) at gtkmarshal.c:312
#12 0x4021df3d in gtk_signal_real_emit (object=0x8104288, signal_id=96,
params=0xbfffee20) at gtksignal.c:1492
#13 0x4021bef7 in gtk_signal_emit (object=0x8104288, signal_id=96)
at gtksignal.c:552
#14 0x8082638 in libbalsa_mailbox_close (mailbox=0x8104288) at
mailbox.c:428
#15 0x806e999 in force_close_mailbox (mailbox=0x8104288) at main.c:276
#16 0x806ea60 in balsa_exit () at main.c:319
#17 0x806c4ca in balsa_window_destroy (object=0x81055b8) at
main-window.c:815
#18 0x401eed67 in gtk_marshal_NONE__NONE (object=0x81055b8,
func=0x806c430 <balsa_window_destroy>, func_data=0x0,
args=0xbffff210)
at gtkmarshal.c:312
#19 0x4021df3d in gtk_signal_real_emit (object=0x81055b8, signal_id=1,
params=0xbffff210) at gtksignal.c:1492
#20 0x4021bef7 in gtk_signal_emit (object=0x81055b8, signal_id=1)
at gtksignal.c:552
#21 0x402005bc in gtk_object_shutdown (object=0x81055b8) at
gtkobject.c:255
#22 0x4025762a in gtk_widget_shutdown (object=0x81055b8) at
gtkwidget.c:4386
#23 0x4025a168 in gtk_window_shutdown (object=0x81055b8) at
gtkwindow.c:656
#24 0x4020055a in gtk_object_destroy (object=0x81055b8) at
gtkobject.c:246
#25 0x4024fec9 in gtk_widget_destroy (widget=0x81055b8) at
gtkwidget.c:1388
#26 0x401ed927 in gtk_main_do_event (event=0x8159278) at gtkmain.c:696
#27 0x4029d03a in gdk_event_dispatch (source_data=0x8059974,
current_time=0x404970b8, user_data=0x4049718c) at gdkevents.c:2129
#28 0x8058a44 in pthread_mutex_lock () at gtkcontainer.c:694
#29 0x5b000000 in ?? ()
Cannot access memory at address 0xe85356
Note that there is also a lot of gtk/gdk warnings sent beginning with
the function in frame #8
I hope it helps :)
By the way does anybody handles the implementation of folders (in order
to have filters working ..) ??
Is there a way to have several images embedded in mail displayed
together ??
Best Regards.
Frederick Ros.
Joaquim Fellmann wrote:
>
> Hye,
>
> I checked what Frederic Ros described :
>
> - run balsa.
> - open a mailbox.
> - select a message
> - click on the small cross of the window, not on the File/Quit menu
> - balsa crashes (every times I tried)
>
> running under gdb :
>
> Breakpoint 1, message_destroyed_cb (message=0x8175ca0, bm=0x806130c)
> at balsa-message.c:312
> 312 balsa-message.c: Aucun fichier ou répertoire de ce type.
> (gdb) print bm->message
> $1 = (LibBalsaMessage *) 0x80a5e9a
> (gdb) step
> balsa_message_set (bm=0x813e110, message=0x0) at balsa-message.c:330
> 330 in balsa-message.c
> (gdb) print bm->message
> $2 = (LibBalsaMessage *) 0x80
>
> bm->message is the symbol that causes problem. Before function
> balsa_message_set (in message_destroyed_cb) , it's a significant value, but
> at the very beginning of the function, it has an invalid value (0x80)
>
> Can someone explain this to me ?
>
> Thanks
>
> _______________________________________________
> balsa-list mailing list
> balsa-list@gnome.org
> http://mail.gnome.org/mailman/listinfo/balsa-list
--
Frederick Ros
Ulticom, Inc
Phone: +33.497.234.520
Frederick.Ros@ulticom.com
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]