After upgrading to evolution-data-server-2.22.2, pidgin seizes to work when you either doubleclick or rightclick onto a contact, when pidgin is compiled with USE="eds". Disabling this USE flag, solves this issue, so there seems to be an issue with the interaction with evolution-data-server. When evolution is running, evolution loses connection to all data-server backend processes and needs to be restarted. I've compiled pidgin with USE="debug" and I will attach the output to this bug. Reproducible: Always Steps to Reproduce: 1. emerge >=evolution-data-server-2.22.2 2. emerge pidgin with USE="eds" 3. run pidgin and double click a contact 4. observe how pidgin freezes Portage 2.1.4.4 (default/linux/amd64/2008.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.25-gentoo_dazuko-patch-r7-stable x86_64) ================================================================= System uname: 2.6.25-gentoo_dazuko-patch-r7-stable x86_64 Intel(R) Core(TM)2 Duo CPU T8100 @ 2.10GHz Timestamp of tree: Tue, 29 Jul 2008 06:45:01 +0000 ccache version 2.4 [enabled] app-shells/bash: 3.2_p33 dev-java/java-config: 1.3.7, 2.1.6 dev-lang/python: 2.5.2-r5 dev-util/ccache: 2.4-r7 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61-r2 sys-devel/automake: 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.23-r3 ACCEPT_KEYWORDS="amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=nocona -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/bin/mygenkernel /usr/sbin/run-crons /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-march=nocona -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache collision-protect distlocks fixpackages metadata-transfer multilib-strict parallel-fetch sandbox sfperms strict test unmerge-orphans userfetch userpriv usersandbox" GENTOO_MIRRORS="ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://pandemonium.tiscali.de/pub/gentoo/ ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ ftp://gd.tuwien.ac.at/opsys/linux/gentoo/ ftp://gentoo.inode.at/source/" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LINGUAS="en de" MAKEOPTS="-j5" PKGDIR="/home/ftp/binpkg/" PORTAGE_COMPRESS="" PORTAGE_RSYNC_EXTRA_OPTS="--timeout=500" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage/layman/alon-barlev /usr/local/portage/layman/sunrise /usr/local/portage/layman/science /usr/local/portage/layman/connectical-contrib /usr/local/portage/layman/synce /usr/local/portage/layman/haskell /usr/local/portage/modified /usr/local/portage/own" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X Xaw3d a52 aac aalib accessibility acl acpi alsa amd64 amr amrnb amrr amrwb apm async audacious audiofile bash-completion berkdb bindist bl bluetooth branding bzip2 cairo cardbus cjk cli cpudetection cracklib crypt css ctype cups dbus dga directfb divx dri dts dvd dvdr dvdread eds encode evo exif expat extensions fam fbcon fbcondecor fbsplash ffmpeg flac foomaticdb force-cgi-redirect fortran ftp gd gdbm gedit gif gimp glade glibc-omitfp glitz gmedia gmp gnutls gphoto2 gs gsm gtk gtkhtml guile hddtemp hdf5 iconv icq icu idn ieee1394 imagemagick imap imlib iproute2 ipw4965 isdnlog jack java javascript jikes jpeg jpeg2k kerberos keyscrub kpathsea laptop latex lcms ldap libcaca libnotify libwww live lm_sensors logrotate loop-aes lzo mad memlimit midi mikmod mime mmx mmxext mng motif mp2 mp3 mp4 mpeg mudflap multilib musepack ncurses nls nntp nptl nptlonly nsplugin nvidia ogg opengl openmp opensslcrypto pam pch pcmcia pcre pda pdf perl plotutils png posix ppds pppd print python quicktime readline realmedia reflection rtsp ruby rubytests samba sasl sdl server session simplexml slang sndfile soap sockets speex spell spl sse sse2 ssl ssse3 stream suhosin svg swat syslog tcpd tetex tga theora threads tiff truetype unicode usb userlocales v4l v4l2 vcd vim-syntax vim-with-x vorbis wifi winbind wma wmf wmp wxwindows x264 xanim xine xinetd xml xorg xpm xsl xulrunner xv xvid xvmc zlib" ALSA_CARDS="hda-intel mpu401" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="fuji ptp2" ELIBC="glibc" INPUT_DEVICES="keyboard mouse ps2mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en de" USERLAND="GNU" VIDEO_CARDS="nvidia" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS_FLAGS
Created attachment 161613 [details] Debug output from pidgin
This is the output of strace after doubleclicking a contact: dustin@legolas ~ $ strace -p 15574 Process 15574 attached - interrupt to quit restart_syscall(<... resuming interrupted call ...> ) = ? ERESTART_RESTARTBLOCK (To be restarted) +++ killed by SIGSEGV +++
As hinted in red letters, "Gentoo Bugzilla" is not the correct product to file bugs regarding ebuilds. Please use "New -> Gentoo Linux -> Component: Ebuilds" or New -> Gentoo Security for security issues in future.
(In reply to comment #3) > As hinted in red letters, "Gentoo Bugzilla" is not the correct product to file > bugs regarding ebuilds. Please use "New -> Gentoo Linux -> Component: Ebuilds" > or New -> Gentoo Security for security issues in future. > Mea culpa: I clicked too fast and then I couldn't correct my fault anymore. Sorry.
please provide a stacktrace, if you don't know how to do, please read http://www.gentoo.org/proj/en/qa/backtraces.xml This may involve rebuilding a large set of your packages.
Okay. I've rebuilt a lot of packages (namely, those pidgin, eds and evolution-exchange are linked against) to provide debug information. First of all, the segfault is in evolution-exchange, not eds. I obtained the following backtrace: (gdb) bt full #0 e2k_restriction_unref (rn=0x0) at e2k-restriction.c:495 i = <value optimized out> #1 0x0000000000425c38 in ?? () No symbol table info available. #2 0x00007f0e1d6b95d9 in _e_book_backend_get_contact_list (backend=0x6aeaf0, book=0x67ede0, opid=2, query=0x6b3791 "(is \"im_icq\" \"430690524\")") at e-book-backend-sync.c:442 status = <value optimized out> cards = (GList *) 0x0 #3 0x00007f0e1a75f79e in ORBit_small_invoke_adaptor (adaptor_obj=0x6b3840, recv_buffer=0x6b4a30, m_data=0x7f0e1d8c7ee0, data=0x40952f00, ev=0x40952f80) at orbit-small.c:846 a = <value optimized out> ctx = {parent = {interface = 0x7f0e1a98e920, refs = 6929160}, mappings = 0x1, children = 0x7f0e1a98e920, the_name = 0x69bb08 "", parent_ctx = 0x6b3840} args = (gpointer *) 0x40952da0 scratch = (gpointer *) 0x40952d80 pretval = (gpointer) 0x0 retval = (gpointer) 0x0 send_buffer = <value optimized out> orb = (CORBA_ORB) 0x670d20 tc = (CORBA_TypeCode) 0x7f0e1a994a00 #4 0x00007f0e1a76d117 in ORBit_POAObject_handle_request (pobj=0x6b3840, opname=0x6b9e9c "getContactList", ret=0x0, args=0x0, ctx=0x0, recv_buffer=0x6b4a30, ev=0x40952f80) at poa.c:1357 invoke_data = {small_skel = 0x7f0e1d6b2582 <_ORBIT_skel_small_GNOME_Evolution_Addressbook_Book_getContactList>, imp = 0x7f0e1d6bea6a} poa = (PortableServer_POA) 0x67cf00 cookie = (PortableServer_ServantLocator_Cookie) 0x0 oid = (PortableServer_ObjectId *) 0x6b38b0 m_data = (ORBit_IMethod *) 0x7f0e1d8c7ee0 small_skel = (ORBitSmallSkeleton) 0x7f0e1d6b2582 <_ORBIT_skel_small_GNOME_Evolution_Addressbook_Book_getContactList> imp = (gpointer) 0x7f0e1d6bea6a __PRETTY_FUNCTION__ = "ORBit_POAObject_handle_request" #5 0x00007f0e1a76d6d5 in ORBit_POAObject_invoke_incoming_request (pobj=0x6b3840, recv_buffer=0x6b4a30, opt_ev=0x0) at poa.c:1427 opname = (CORBA_Identifier) 0x0 real_ev = {_id = 0x0, _major = 0, _any = {_type = 0x0, _value = 0x0, _release = 0 '\0'}} ev = (CORBA_Environment *) 0x40952f80 #6 0x00007f0e1a75973f in giop_thread_queue_process (tdata=0x69e790) at giop.c:780 ent = (GIOPMessageQueueEntry *) 0x0 qe = (GIOPQueueEntry *) 0x67ccf0 request = (GList *) 0x0 no_policy = 1 #7 0x00007f0e1a759ecf in giop_request_handler_thread (data=<value optimized out>, user_data=0x0) at giop.c:490 done = 1 l = (GList *) 0x69e790 tdata = (GIOPThread *) 0x69e790 #8 0x00007f0e1969b159 in g_thread_pool_thread_proxy (data=<value optimized out>) at gthreadpool.c:265 task = (gpointer) 0x69e790 pool = (GRealThreadPool *) 0x66fff0 #9 0x00007f0e19699a41 in g_thread_create_proxy (data=0x6acdb0) at gthread.c:635 __PRETTY_FUNCTION__ = "g_thread_create_proxy" #10 0x00007f0e19e923a7 in start_thread () from /lib/libpthread.so.0 No symbol table info available. #11 0x00007f0e193beb6d in clone () from /lib/libc.so.6 No symbol table info available. #12 0x0000000000000000 in ?? () No symbol table info available. When double-clicking to a contact, this is the last output in gdb: [New Thread 0x40c8d950 (LWP 368)] impl_GNOME_Evolution_Addressbook_BookFactory_getBook + file:///home/dustin/.evolution/addressbook/local/system impl_GNOME_Evolution_Addressbook_BookFactory_getBook + gal://gl832;auth=Basic@mail.uni-siegen.de/gal => 0x67ed80 impl_GNOME_Evolution_Addressbook_Book_open (0x67ed80) offlin============== [New Thread 0x4148e950 (LWP 370)] impl_GNOME_Evolution_Addressbook_Book_getContactList get contact list Mode : Remote impl_GNOME_Evolution_Addressbook_BookFactory_getBook + exchange://gl832;auth=Basic@mail.uni-siegen.de/;personal/Kontakte => 0x67ede0 impl_GNOME_Evolution_Addressbook_Book_open (0x67ede0) impl_GNOME_Evolution_Addressbook_Book_getContactList (evolution-exchange-storage:32766): e-data-server-WARNING **: Error in execution: no prop (evolution-exchange-storage:32766): e-book-backend-exchange-WARNING **: conversion to exchange restriction failed (evolution-exchange-storage:32766): evolution-exchange-storage-CRITICAL **: e_folder_exchange_search_start: assertion `E_IS_FOLDER_EXCHANGE (folder)' failed Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x40c8d950 (LWP 368)] e2k_restriction_unref (rn=0x0) at e2k-restriction.c:495 495 e2k-restriction.c: No such file or directory. in e2k-restriction.c Additionally, I've found the following: If you have configured a Global Address List in an Exchange account, you can observe the following behavior: 1) You have started evolution and authenticated to the GAL server in evolution by accessing the address book and provided your login credentials (either saved or entered in the pop-up dialog) and then double-click onto a contact in pidgin (using the Evolution Integration plugin), pidgin behaves correctly. 2) You have started evolution but have NOT authenticated to the GAL server in evolution and then double-click onto a contact in pidgin (using the Evolution Integration plugin), pidgin freezes waiting for a response and evolution-exchange segfaults. 3) You have not started evolution and Not authenticated to the GAL server, then double-click onto a contact in pigdin (using the Evolution Integration plugin), same result as 2). I will attach the output of '(gdb) thread apply all bt full' as seperate file. If I can help further to track this down, please let me know. BR, Dustin
Created attachment 161708 [details] Backtrace log from gdb
I have reported this upstream as well (cf. URL above). If you decide to mark this upstream, this is fine to me since I can either disable the plugin or authenticate via evolution.
please test with evolution-exchange 2.22.3
(In reply to comment #9) > please test with evolution-exchange 2.22.3 evolution-exchange 2.22.3 does not compile: e-cal-backend-exchange-calendar.c:28:43: error: libecal/e-cal-check-timezones.h: No such file or directory e-cal-backend-exchange-calendar.c: In function 'add_ical': e-cal-backend-exchange-calendar.c:262: warning: implicit declaration of function 'e_cal_check_timezones' e-cal-backend-exchange-calendar.c:262: warning: nested extern declaration of 'e_cal_check_timezones' e-cal-backend-exchange-calendar.c: In function 'send_objects': e-cal-backend-exchange-calendar.c:2012: warning: unused variable 'tzcomp' make[2]: *** [e-cal-backend-exchange-calendar.lo] Error 1 make[2]: Leaving directory `/var/tmp/portage/gnome-extra/evolution-exchange-2.22.3/work/evolution-exchange-2.22.3/calendar' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/gnome-extra/evolution-exchange-2.22.3/work/evolution-exchange-2.22.3' make: *** [all] Error 2 Should I file a separate bug?
(In reply to comment #10) > (In reply to comment #9) > > please test with evolution-exchange 2.22.3 > > evolution-exchange 2.22.3 does not compile: evolution-exchange needs evolution-data-server-2.22.3
evolution-exchange-2.22.3 segfaults as well.
(In reply to comment #11) > (In reply to comment #10) > > (In reply to comment #9) > > > please test with evolution-exchange 2.22.3 > > > > evolution-exchange 2.22.3 does not compile: > > evolution-exchange needs evolution-data-server-2.22.3 > which version of evolution / evolution-data-server did you try to compile it against ? Other than that I haven't seen anything obvious in the backtrace (misses a few symbols btw) so you might want to open a bug upstream (gnome upstream I'd say).
(In reply to comment #13) > which version of evolution / evolution-data-server did you try to compile it > against ? I tried 2.22.2. But this version is missing headers evolution-exchange-2.22.3 is relying on, so I suggest to raise the DEPENDS. > Other than that I haven't seen anything obvious in the backtrace > (misses a few symbols btw) so you might want to open a bug upstream (gnome > upstream I'd say). Already did, cf. comment #8. URL is http://bugzilla.gnome.org/show_bug.cgi?id=545517
Upstream provided a patch that solves this issue (see new upstream URL http://bugzilla.gnome.org/show_bug.cgi?id=473924) I just had to remove the changes from ChangeLog since the diff was made against svn trunk, I guess. I will attach the patch as well a diff to the ebuild.
Created attachment 162260 [details, diff] Patch to prevent evolution-exchange to crash
Created attachment 162264 [details] Modified ebuild diff Takes into account that evolution-exchange-2.22.3 requires evolution-data-server-2.22.3 as well (see comment 11).
patch has been commited, thanks for providing one.