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 601551 - [PST] evolution crashed with SIGSEGV
[PST] evolution crashed with SIGSEGV
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: Plugins
2.28.x (obsolete)
Other Linux
: Normal critical
: ---
Assigned To: evolution-plugin-maintainers
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2009-11-11 14:39 UTC by Pedro Villavicencio
Modified: 2010-02-24 17:02 UTC
See Also:
GNOME target: ---
GNOME version: 2.27/2.28


Attachments
evo patch (2.16 KB, patch)
2010-02-24 16:59 UTC, Milan Crha
committed Details | Review

Description Pedro Villavicencio 2009-11-11 14:39:47 UTC
this report has been filed here:

https://bugs.edge.launchpad.net/ubuntu/+source/evolution/+bug/471852

"Crashed during importing outlook 2007 pst file. Imported constacts and tasks, but crashed on calendar items."

".

Thread 1 (process 3541)

  • #0 fill_calcomponent
    at pst-importer.c line 1317
  • #1 pst_import_file
    at pst-importer.c line 1455
  • #2 pst_import_import
    at pst-importer.c line 421
  • #3 mail_msg_proxy
    at mail-mt.c line 522
  • #4 ??
    from /lib/libglib-2.0.so.0
  • #5 ??
    from /lib/libglib-2.0.so.0
  • #6 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0
  • #7 clone
    at ../sysdeps/unix/sysv/linux/i386/clone.S line 130

Comment 1 Milan Crha 2010-02-24 16:55:36 UTC
> fill_calcomponent (m=<value optimized out>, item=0xb1bbc028, 
>     ec=0x8bbb2d0, type=0x2a766e6 "task") at pst-importer.c:1317
> 	a = (pst_item_appointment *) 0x0
>	text = {
>  value = 0xb1b1f640 "Noclegi w poznaniu weekend przed 25 sierpnia.", 

The task didn't have an 'appointment' part for some reason, thus it crashed at:
> 1315	}
> 1316
> 1317	if (a->location.str) {
> 1318		e_cal_component_set_location (ec, a->location.str);
> 1318	}

when 'a' is NULL.
Comment 2 Milan Crha 2010-02-24 16:59:57 UTC
Created attachment 154609 [details] [review]
evo patch

for evolution;

I as unable to reproduce this myself, unfortunately, thus I added only few sanity checks before using the pointers. It will skip those invalid silently.
Comment 3 Milan Crha 2010-02-24 17:02:47 UTC
Created commit 50fb261 in evo master (2.29.92+)
Created commit 9720d79 in evo gnome-2-28 (2.28.3+)