After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 697632 - [mail-to-task] Invalid unref of a CamelFolder
[mail-to-task] Invalid unref of a CamelFolder
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: Plugins
3.6.x (obsolete)
Other Linux
: Normal normal
: ---
Assigned To: evolution-plugin-maintainers
Evolution QA team
: 674450 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2013-04-09 11:44 UTC by Samarjit Adhikari
Modified: 2013-05-12 12:42 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
evolution-bugs (10.00 KB, application/x-bzip2)
2013-04-09 11:44 UTC, Samarjit Adhikari
Details

Description Samarjit Adhikari 2013-04-09 11:44:47 UTC
Created attachment 241052 [details]
evolution-bugs

[My Evolution configuration]
Version: 3.6.4+
Plugin: evolution-mapi

[steps to reproduce]
1. Select any mail from inbox.
2. Right Click on a mail. A action menu list will appear.
3. Choose Create-->Create an Appointment
4. it will ask for "Select destination"
5. Select "Personal" on this computer followed by OK
6. A Appointment window will open. Just cancel it by closing it.
7. It will ask "Would you like to save changes to this appointment?"
8. Select "Discard Changes"
9. Now left click on any others mails in Inbox.  It will crash

Step 9 could be as follows as well.
    9a) left click on a MAPI account name in the folder tree
    9b) left click on MAPI's Inbox in the folder tree

Attaching gdb what is being found
===========================================================================
Breakpoint 1, e_mail_reader_check_state (reader=reader@entry=0x7f22a8d31340) at e-mail-reader.c:4129
4129    e-mail-reader.c: No such file or directory.
(gdb) c
Continuing.

Breakpoint 2, camel_folder_get_parent_store (folder=0x7f22a8f93730) at camel-folder.c:2113
2113    camel-folder.c: No such file or directory.
(gdb) p folder
$1 = (CamelFolder *) 0x7f22a8f93730
(gdb) p *folder
$2 = {parent = {parent = {g_type_instance = {g_class = 0x7f22a8f93580}, ref_count = 0, qdata = 0x0}, priv = 0x7f22a8f937d0},
  priv = 0x7f22a8f937e0, summary = 0x0, folder_flags = CAMEL_FOLDER_HAS_SUMMARY_CAPABILITY, permanent_flags = 159, later = {0x0, 0x0, 0x0,
    0x0}}
(gdb) b e-mail-reader.c:4172
Breakpoint 3 at 0x7f22729ff41c: file e-mail-reader.c, line 4172.
(gdb) c
Continuing.

Breakpoint 2, camel_folder_get_parent_store (folder=0x7f22a8f93730) at camel-folder.c:2112
2112    in camel-folder.c
(gdb) p store
$3 = (GtkListStore *) 0x0
(gdb) p *folder
$4 = {parent = {parent = {g_type_instance = {g_class = 0x7f22a8f93580}, ref_count = 0, qdata = 0x0}, priv = 0x7f22a8f937d0},
  priv = 0x7f22a8f937e0, summary = 0x0, folder_flags = CAMEL_FOLDER_HAS_SUMMARY_CAPABILITY, permanent_flags = 159, later = {0x0, 0x0, 0x0,
    0x0}}
(gdb) p *folder->priv
$5 = {lock = {mutex = {mutex = 0x7f224c178940, unused = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 0,
          __spins = 0, __list = {__prev = 0x0, __next = 0x0}}, __size = '\000' <repeats 39 times>, __align = 0}}, depth = 0, unused = {
      owner = 0, dummy = 0}}, change_lock = {mutex = 0x0, unused = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 0,
        __spins = 0, __list = {__prev = 0x0, __next = 0x0}}, __size = '\000' <repeats 39 times>, __align = 0}}, frozen = 0,
  changed_frozen = 0x7f22840212f0, skip_folder_lock = 0, pending_changes = 0x0, parent_store = 0x0, full_name = 0x7f224c005f90 "\300c",
  display_name = 0x7f224c0013f0 "\260\020", description = 0x7f224c006380 "\240]"}
(gdb) p *account_store
No symbol "account_store" in current context.
===================================================================

File "bt_evolution_8651_04082013.txt" contains stack trace just before step 9.
File "createAppointmentStackTrace" contains traces when crash happens at step 9
Comment 1 Milan Crha 2013-04-15 08:27:41 UTC
I'm moving this to evolution, due to your findings from the evolution-hackers list.
Comment 2 Milan Crha 2013-04-29 10:30:11 UTC
Hi/ping, is there any update on the patch, please? The 3.8.2 release is coming soon, in about 2 weeks, and it'll be good to have this one fixed there too.
Comment 3 Milan Crha 2013-04-29 10:32:30 UTC
*** Bug 674450 has been marked as a duplicate of this bug. ***
Comment 4 Milan Crha 2013-05-10 16:15:57 UTC
(In reply to comment #2)
> Hi/ping, is there any update on the patch, please? The 3.8.2 release is coming
> soon, in about 2 weeks, and it'll be good to have this one fixed there too.

Oops, it's the next week, and Matthew usually releases during the weekend, do we miss the release? If you are out of time, then no problem, just let here know (in bugzilla), and someone else will do the fix.
Comment 5 Matthew Barnes 2013-05-12 12:42:53 UTC
I followed up on this based on Milan's comments on the mailing list, but still credited Samarjit with the patch.

Fixed for Evolution 3.9.2 and 3.8.2 (in the nick of time):

https://git.gnome.org/browse/evolution/commit/?id=f0151c785648b44850b46fa50336126c282fcc58

https://git.gnome.org/browse/evolution/commit/?h=gnome-3-8&id=f3b18d41c983287540c21996aadd3e95a2c63013