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 678856 - Crash in add_instance() at e-cal-client.c:1311
Crash in add_instance() at e-cal-client.c:1311
Status: RESOLVED FIXED
Product: evolution-data-server
Classification: Platform
Component: Calendar
3.4.x (obsolete)
Other Linux
: Normal critical
: ---
Assigned To: evolution-calendar-maintainers
Evolution QA team
: 671639 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2012-06-26 10:21 UTC by Milan Crha
Modified: 2012-07-26 17:10 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
eds patch (4.14 KB, patch)
2012-06-26 12:02 UTC, Milan Crha
committed Details | Review

Description Milan Crha 2012-06-26 10:21:56 UTC
Moving this from a downstream bug report:
https://bugzilla.redhat.com/show_bug.cgi?id=828846

After upgrading my workstation from F16 to F17, evolution stopped working.
I have tried to run it from the command line instead of main menu to see the output: 

It tried to migrate my data to the new format (I don't have the exact message, though), complaining that $HOME/.evolution/tasks is not empty, and segfaulting afterwards.

I have removed the directory .evolution/tasks, and after that evolution printed that it tries to migrate the old data, followed by a segfault.

Subsequent runs of evolution just end with "Segmentation fault", so I think the migration has succeeded and the problem is somewhere later.

I am running XFCE session, not GNOME, FWIW.

Version-Release number of selected component (if applicable):
evolution-3.4.1-2.fc17.x86_64

My /etc/localtime is the following:

$ ls -l /etc/localtime
-rw-r--r--. 1 root root 2246 Mar  6  2007 /etc/localtime
$ rpm -qf /etc/localtime
glibc-2.15-37.fc17.x86_64
glibc-2.15-37.fc17.i686
$ sha1sum /etc/localtime
dfe6e078c1c95953796854bc6fc176ed45bd9545  /etc/localtime

I am in the Central-European (CET/CETDST) time zone.

------------------------------------------------------------------------------

In the backtrace:

(gdb) print end
$1 = 1339797600
(gdb) print dtend.value
$2 = (struct icaltimetype *) 0x0
(gdb) print instances_hold
$3 = (struct instances_info *) 0x222fc80
(gdb) print instances_hold->end_zone
$4 = (icaltimezone *) 0x0

Core was generated by `evolution'.
Program terminated with signal 11, Segmentation fault.
  • #0 add_instance
    at e-cal-client.c line 1311
  • #0 add_instance
    at e-cal-client.c line 1311
  • #1 generate_instances_for_chunk
    at e-cal-recur.c line 1392
  • #2 e_cal_recur_generate_instances_of_rule
    at e-cal-recur.c line 864
  • #3 e_cal_recur_generate_instances
  • #4 generate_instances
    at e-cal-client.c line 1561
  • #5 generate_instances_for_object_got_objects_cb
    at e-cal-client.c line 2027
  • #6 got_objects_for_uid_cb
    at e-cal-client.c line 1745
  • #7 g_simple_async_result_complete
    at gsimpleasyncresult.c line 767
  • #8 finish_async_op
    at e-client.c line 2260
  • #9 async_result_ready_cb
    at e-client.c line 2297
  • #10 g_simple_async_result_complete
    at gsimpleasyncresult.c line 767
  • #11 complete_in_idle_cb
    at gsimpleasyncresult.c line 779
  • #12 g_main_dispatch
    at gmain.c line 2539
  • #13 g_main_context_dispatch
    at gmain.c line 3075
  • #14 g_main_context_iterate
    at gmain.c line 3146
  • #15 g_main_loop_run
    at gmain.c line 3340
  • #16 gtk_main
    at gtkmain.c line 1161
  • #17 main
    at main.c line 681

Comment 1 Milan Crha 2012-06-26 11:35:42 UTC
After looking closely into the code, it looks like the event has no DTEND set. According to [1], this is allowed, DTEND is not a required property.

[1] http://tools.ietf.org/html/rfc2445#section-4.8.2.4
Comment 2 Milan Crha 2012-06-26 12:02:18 UTC
Created attachment 217277 [details] [review]
eds patch

for evolution-data-server;

This fixes the crash for me. I was able to reproduce when I had a recurring event with no DTEND set in my local calendar.
Comment 3 Milan Crha 2012-06-26 12:04:23 UTC
Created commit 08706ae in eds master (3.5.4+)
Created commit 15a56d6 in eds gnome-3-4 (3.4.4+)
Comment 4 Milan Crha 2012-07-26 17:10:36 UTC
*** Bug 671639 has been marked as a duplicate of this bug. ***