Bug 233263 - net-im/pidgin-2.4.3: segfaults gnome-extra/evolution-exchange-2.22.0
|
Bug#:
233263
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: All
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: net-im@gentoo.org
|
Reported By: gentoobugsie.20.dsurawicz@spamgourmet.com
|
|
Component: Unspecified
|
|
|
URL:
http://bugzilla.gnome.org/show_bug.cgi?id=473924
|
|
Summary: net-im/pidgin-2.4.3: segfaults gnome-extra/evolution-exchange-2.22.0
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2008-07-29 12:05 0000
|
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
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.
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
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.
patch has been commited, thanks for providing one.