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 682020 - Crash when fetching GAL list in account properties
Crash when fetching GAL list in account properties
Status: RESOLVED FIXED
Product: evolution-ews
Classification: Other
Component: Contacts (Global Address List)
3.4.x
Other Linux
: Normal critical
: ---
Assigned To: Evolution EWS maintainer(s)
Evolution EWS maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2012-08-16 16:21 UTC by Andrew Wafaa
Modified: 2013-01-07 12:00 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
ews patch (5.34 KB, patch)
2012-08-30 13:56 UTC, Milan Crha
committed Details | Review

Description Andrew Wafaa 2012-08-16 16:21:53 UTC
When trying to fetch the GAL so that it can be used offline causes a segfault. System is openSUSE 12.2 x86_64 with evolution-3.4.3 evolution-data-server-3.4.3 evolution-ews-3.4.2. Trace is below:

Program received signal SIGSEGV, Segmentation fault.
e_ews_get_msg_for_url (url=<optimized out>, buf=buf@entry=0x0)
    at e-ews-connection.c:1487
1487	e-ews-connection.c: No such file or directory.

Thread 1 (Thread 0x7ffff7fb9980 (LWP 14005))

  • #0 e_ews_get_msg_for_url
    at e-ews-connection.c line 1487
  • #1 e_ews_connection_get_oal_list_start
    at e-ews-connection.c line 1807
  • #2 fetch_button_clicked_cb
    at exchange-ews-account-setup.c line 538
  • #3 _g_closure_invoke_va
    at gclosure.c line 840
  • #4 g_signal_emit_valist
    at gsignal.c line 3207
  • #5 g_signal_emit
    at gsignal.c line 3352
  • #6 gtk_real_button_released
    at gtkbutton.c line 2007
  • #7 g_closure_invoke
    at gclosure.c line 777
  • #8 signal_emit_unlocked_R
  • #9 g_signal_emit_valist
    at gsignal.c line 3296
  • #10 g_signal_emit
    at gsignal.c line 3352
  • #11 gtk_button_button_release
    at gtkbutton.c line 1842
  • #12 gtk_button_button_release
    at gtkbutton.c line 1834
  • #13 _gtk_marshal_BOOLEAN__BOXEDv
    at gtkmarshalers.c line 130
  • #14 _g_closure_invoke_va
    at gclosure.c line 840
  • #15 g_signal_emit_valist
    at gsignal.c line 3207
  • #16 g_signal_emit
    at gsignal.c line 3352
  • #17 gtk_widget_event_internal
    at gtkwidget.c line 6380
  • #18 gtk_widget_event
  • #19 propagate_event_up
    at gtkmain.c line 2390
  • #20 propagate_event
    at gtkmain.c line 2490
  • #21 gtk_main_do_event
    at gtkmain.c line 1713
  • #22 gdk_event_source_dispatch
    at gdkeventsource.c line 358
  • #23 g_main_dispatch
    at gmain.c line 2539
  • #24 g_main_context_dispatch
    at gmain.c line 3075
  • #25 g_main_context_iterate
    at gmain.c line 3146
  • #26 g_main_loop_run
    at gmain.c line 3340
  • #27 gtk_main
    at gtkmain.c line 1161
  • #28 main
    at main.c line 681

Comment 1 André Klapper 2012-08-17 09:23:51 UTC
Not a plugin => EWS
Comment 2 Milan Crha 2012-08-29 14:59:11 UTC
Thanks for a bug report. Can you still reproduce this, please? The best if tested with 3.4.4, but not necessary. I'm wondering what the 'url' being used in the function which crashed is, though the compiler optimized it out, unfortunately. I see the code for 3.6.0 is not the same as the one in 3.4.3, thus maybe it is already fixed for the next release.

By the way, did you get this crash the first time you was adding the account into evolution, or when you edited account which was already working?
Comment 3 Andrew Wafaa 2012-08-29 15:13:03 UTC
Yes, I can reproduce the issue both on openSUSE running 3.4.3 and Ubuntu which is running the older 3.2.3. I'm trying to see if 3.4.4 is going to get pushed out for openSUSE or if we're waiting for 3.6.0.

I got this issue both on a new setup and also when editing. This is the only issue I have with -ews, everything else works fine.
Comment 4 Milan Crha 2012-08-30 12:08:24 UTC
Thanks for the update. I may note what I did here:
a) start evolution with ews account enabled
b) wait until the initial message fetching is done (basically the status bar
   is empty)
c) Edit -> Preferences -> Mail Accounts -> select <EWS account> -> Edit ->
   select "Receiving Options" tab -> check "Cache offline address book",
   and then finally click "Fetch List" - then the function is called.

This doesn't crash here, because I have filled OAB URL from "Receiving Email" tab. What do you have filled there, please? Either the OAB URL is empty, or it is invalid, I would say. Please change any private information within the URL with 'x' letter, but only characters between a-zA-Z0-9, thus any special letters will be kept there.
Comment 5 Milan Crha 2012-08-30 13:10:55 UTC
We had a chat on IRC and it turned out that this crash happens when the OAB URL is filled with an invalid URL, like if I type there "a a" (quotes for clarity only), and then go to Receiving Email tab and click "Fetch List", then evolution crashes. Thus I'm confirming the bug.
Comment 6 Milan Crha 2012-08-30 13:56:21 UTC
Created attachment 222941 [details] [review]
ews patch

for evolution-ews;

This fixes the crash when user clicks "Fetch List" on "Receiving Options" tab with non-URL being filled in OAB URL on "Receiving Email" tab.
Comment 7 Milan Crha 2012-08-30 13:57:58 UTC
Created commit 2d98e86 in ews master (3.5.91+)
Comment 8 Milan Crha 2013-01-07 12:00:04 UTC
Downstream bug report about the same from 3.4.4:
https://bugzilla.redhat.com/show_bug.cgi?id=890670