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 497928 - crash: deleting Address book assigned to Pidgin Automatic Contacts
crash: deleting Address book assigned to Pidgin Automatic Contacts
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: Contacts
2.12.x (obsolete)
Other Linux
: High critical
: ---
Assigned To: Milan Crha
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2007-11-18 16:00 UTC by Víctor Daniel
Modified: 2008-09-29 09:27 UTC
See Also:
GNOME target: ---
GNOME version: 2.19/2.20


Attachments
proposed evo patch (1.47 KB, patch)
2008-09-09 17:53 UTC, Milan Crha
committed Details | Review
proposed eds patch (9.18 KB, patch)
2008-09-10 12:54 UTC, Milan Crha
committed Details | Review

Description Víctor Daniel 2007-11-18 16:00:54 UTC
Evolution not responds if the Address book asigned to Pidgin Automatic Contacts is deleted.

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

Distribution: Fedora release 8 (Werewolf)
Gnome Release: 2.20.1 2007-11-13 (Red Hat, Inc)
BugBuddy Version: 2.20.1

System: Linux 2.6.23.1-49.fc8 #1 SMP Thu Nov 8 21:41:26 EST 2007 i686
X Vendor: The X.Org Foundation
X Vendor Release: 10300000
Selinux: Enforcing
Accessibility: Disabled
GTK+ Theme: Darkilouche
Icon Theme: gnome

Memory status: size: 128184320 vsize: 128184320 resident: 11661312 share: 8273920 rss: 11661312 rss_rlim: 4294967295
CPU usage: start_time: 1195399364 rtime: 962 utime: 874 stime: 88 cutime:0 cstime: 0 timeout: 0 it_real_value: 0 frequency: 100

Backtrace was generated from '/usr/bin/evolution'

[?1034hUsing host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1209137392 (LWP 4376)]
[New Thread -1306330224 (LWP 4428)]
[New Thread -1295840368 (LWP 4427)]
[New Thread -1231185008 (LWP 4386)]
0x00110402 in __kernel_vsyscall ()

Thread 1 (Thread -1209137392 (LWP 4376))

  • #0 __kernel_vsyscall
  • #1 pthread_cond_wait
    from /lib/libpthread.so.0
  • #2 do_open
    at e-book.c line 2713
  • #3 bbdb_open_addressbook
    at bbdb.c line 333
  • #4 bbdb_sync_buddy_list
    at gaimbuddies.c line 126
  • #5 synchronize_button_clicked_cb
    at bbdb.c line 428
  • #6 IA__g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 77
  • #7 IA__g_closure_invoke
    at gclosure.c line 490
  • #8 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #9 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #10 IA__g_signal_emit
    at gsignal.c line 2243
  • #11 IA__gtk_button_clicked
    at gtkbutton.c line 889
  • #12 gtk_real_button_released
    at gtkbutton.c line 1484
  • #13 IA__g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 77
  • #14 g_type_class_meta_marshal
    at gclosure.c line 567
  • #15 IA__g_closure_invoke
    at gclosure.c line 490
  • #16 signal_emit_unlocked_R
    at gsignal.c line 2370
  • #17 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #18 IA__g_signal_emit
    at gsignal.c line 2243
  • #19 IA__gtk_button_released
    at gtkbutton.c line 881
  • #20 gtk_button_button_release
    at gtkbutton.c line 1377
  • #21 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 84
  • #22 g_type_class_meta_marshal
    at gclosure.c line 567
  • #23 IA__g_closure_invoke
    at gclosure.c line 490
  • #24 signal_emit_unlocked_R
    at gsignal.c line 2478
  • #25 IA__g_signal_emit_valist
    at gsignal.c line 2209
  • #26 IA__g_signal_emit
    at gsignal.c line 2243
  • #27 gtk_widget_event_internal
    at gtkwidget.c line 4675
  • #28 IA__gtk_propagate_event
    at gtkmain.c line 2319
  • #29 IA__gtk_main_do_event
    at gtkmain.c line 1539
  • #30 gdk_event_dispatch
    at gdkevents-x11.c line 2351
  • #31 IA__g_main_context_dispatch
    at gmain.c line 2061
  • #32 g_main_context_iterate
    at gmain.c line 2694
  • #33 IA__g_main_loop_run
    at gmain.c line 2898
  • #34 bonobo_main
    at bonobo-main.c line 311
  • #35 main
    at main.c line 602
  • #36 __libc_start_main
    at libc-start.c line 220
  • #37 _start
  • #0 __kernel_vsyscall


----------- .xsession-errors (795 sec old) ---------------------
Unhandled exception in thread started by <bound method Installer_Package.__install_file of <PackageInstaller.Installer_Package object at 0xb7a0610c>>
Error in sys.excepthook:
Traceback (most recent call last):
  File "/usr/lib/gdesklets/utils/__init__.py", line 23, in _pretty_excepthook
    deep_trace = True)
  File "/usr/lib/gdesklets/utils/ErrorFormatter.py", line 42, in format
    filename = tbs[-1][0]
IndexError: list index out of range
Original exception was:
TypeError: GtkLabel.set_text() argument 1 must be string without null bytes, not str
==========================================================[11/18/07-09:09:52]===
=== Unhandled error! Something bad and unexpected happened. ===
[EXC]unknown url type: 
--------------------------------------------------
Comment 1 Milan Crha 2008-09-09 17:53:24 UTC
Created attachment 118373 [details] [review]
proposed evo patch

for evolution;

EDS died and evo was waiting for the finish of the operation. Quite bad. This patch works better, because:
a) it doesn't let crash eds
b) no runtime warnings on console
c) no reopening of the deleted addressbook (one can open deleted address book
   by URI)

But, I'm going to produce some patch on EDS side too, to stop operations when it crashes badly. ECal knows that, thus why not EBook?
Anyway, the evo patch is enough to not crash/freeze.
Comment 2 Milan Crha 2008-09-10 12:54:05 UTC
Created attachment 118423 [details] [review]
proposed eds patch

for evolution-data-server;

Both patches are mutually exclusive, one works without the other, but I believe both could be applied.

The bad thing on this is that I thought I will be able to fix this in a better way, like get the event of disconnection, but I found that even ORBit knows about the crash of EDS, then it sends this event on idle, which will never happen, because evolution's main thread is waiting on the condition to be flagged. Bad luck then.
Comment 3 Srinivasa Ragavan 2008-09-29 06:10:49 UTC
Commit to stable/trunk
Comment 4 Milan Crha 2008-09-29 09:27:45 UTC
eds part committed to trunk. Committed revision 9626.
eds part committed to gnome-2-24. Committed revision 9627.
evo part committed to trunk. Committed revision 36469.
evo part committed to gnome-2-24. Committed revision 36470.