HEAD crashes when closed during mailbox scan



I know I shouldn't do that, but I clicked on the WM's close button while balsa (HEAD of today) was still scanning the mailboxes. The result is a (reproducible) segfault... please see the attached gdb log.

Cheers, Albrecht.

--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Albrecht Dreß  -  Johanna-Kirchner-Straße 13  -  D-53123 Bonn (Germany)
      Phone (+49) 228 6199571  -  mailto:albrecht dress arcor de
_________________________________________________________________________
[albrecht antares balsa-rfc3156]$ gdb src/balsa
GNU gdb Yellow Dog Linux (5.2.1-4b)
Copyright 2002 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 "ppc-yellowdog-linux"...
(gdb) run
Starting program: /home/albrecht/Balsa/HEAD/balsa-rfc3156/src/balsa 
[New Thread 16384 (LWP 14227)]
** Message: init gpgme version 0.4.7
[New Thread 32769 (LWP 14236)]
[New Thread 16386 (LWP 14237)]
[New Thread 32771 (LWP 14238)]
[New Thread 49156 (LWP 14239)]
[New Thread 65541 (LWP 14240)]
[New Thread 81926 (LWP 14241)]
[New Thread 98311 (LWP 14242)]
[New Thread 114696 (LWP 14243)]
opening Eingang..
[New Thread 131081 (LWP 14244)]
done, msgcnt=0
done, msgcnt=0

(balsa:14239): GLib-GObject-WARNING **: invalid cast from `(null)' to `LibBalsaMailbox'

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 49156 (LWP 14239)]
0x10084910 in get_from_field (message=0x34438ff8) at mailbox.c:309
309         if (message->mailbox->view->show == LB_MAILBOX_SHOW_TO) {
(gdb) bt full 
#0  0x10084910 in get_from_field (message=0x34438ff8) at mailbox.c:309
        append_dots = 0
        name_str = (const gchar *) 0x0
        from = (gchar *) 0x4 <Address 0x4 out of bounds>
        addy = (LibBalsaAddress *) 0x0
#1  0x10084a14 in libbalsa_mailbox_index_entry_new_from_msg (msg=0x34438ff8) at mailbox.c:333
        entry = (LibBalsaMailboxIndexEntry *) 0x344342c0
#2  0x10094738 in parse_mailbox (mbox=0x1026f5a8) at mailbox_mbox.c:331
        entry = (LibBalsaMailboxIndexEntry *) 0x344355c0
        msg = (LibBalsaMessage *) 0x34438ff8
        gmime_parser = (GMimeParser *) 0x1028b050
        msg_info = {start = 4, status = 876830664, x_status = 834038176, end = 1210198146, from = 0x34438ff8 "\020)\225@", 
  message = 0x344342c0, flags = 834038208, orig_flags = 268978708}
        msg_info_p = (struct message_info *) 0xffffffff
        mime_message = (GMimeMessage *) 0x34439598
        msgno = 243
#3  0x10094ac0 in libbalsa_mailbox_mbox_open (mailbox=0x1026f5a8, err=0x31b66aec) at mailbox_mbox.c:427
        mbox = (LibBalsaMailboxMbox *) 0x1026f5a8
        st = {st_dev = 18056699848, __pad1 = 12726, st_ino = 1210198146, st_mode = 876843000, st_nlink = 876823232, 
  st_uid = 834038208, st_gid = 268978708, st_rdev = 18446744070291428760, __pad2 = 4134, st_size = 876828096, 
  st_blksize = 271102032, st_blocks = 876843000, st_atim = {tv_sec = 834038288, tv_nsec = 269043512}, st_mtim = {
    tv_sec = 1024162, tv_nsec = 1027531}, st_ctim = {tv_sec = 1027542, tv_nsec = 1032744}, __unused4 = 876844920, 
  __unused5 = 0}
        path = (const gchar *) 0x1028ac48 "\020(ªø"
        fd = 876843000
        gmime_stream = (GMimeStream *) 0x1028ac48
        t0 = 834038216
#4  0x10084f44 in libbalsa_mailbox_open (mailbox=0x1026f5a8, err=0x31b66aec) at mailbox.c:468
        retval = 270988712
#5  0x10026cf0 in balsa_index_load_mailbox_node (index=0x10312308, mbnode=0x1026f650, err=0x31b66aec) at balsa-index.c:770
        tree_view = (GtkTreeView *) 0x1026f650
        mailbox = (LibBalsaMailbox *) 0x1026f5a8
        msg = (gchar *) 0x103186e8 "PCRE"
        successp = 271681256
#6  0x100470ec in real_open_mbnode (mbnode=0x4) at main-window.c:1594
        window = (BalsaWindow *) 0x1019d5b0
        index = (BalsaIndex *) 0x10312308
        label = (GtkWidget *) 0xfac0910
        scroll = (GtkWidget *) 0x1019d5b0
        page_num = 270128560
        failurep = 271655688
        err = (GError *) 0x34435fc8
        open_lock = {__m_reserved = 0, __m_count = 0, __m_owner = 0x0, __m_kind = 0, __m_lock = {__status = 875981464, 
    __spinlock = 0}}
#7  0x0faa6854 in pthread_start_thread_event (arg=0x31b66be0) at manager.c:300
No locals.
#8  0x0e36c264 in clone () at fstab.c:176
        __elf_set___libc_subfreeres_element_fstab_free__ = (const void *) 0xe3a6b48
        fstab_state = {fs_fp = 0x0, fs_buffer = 0x0, fs_mntres = {mnt_fsname = 0x0, mnt_dir = 0x0, mnt_type = 0x0, 
    mnt_opts = 0x0, mnt_freq = 0, mnt_passno = 0}, fs_ret = {fs_spec = 0x0, fs_file = 0x0, fs_vfstype = 0x0, fs_mntops = 0x0, 
    fs_type = 0x0, fs_freq = 0, fs_passno = 0}}
(gdb) kill

Attachment: pgp00030.pgp
Description: PGP signature



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