Bug 184290

Summary: gaim crashes
Product: [Fedora] Fedora Reporter: Nathanael Noblet <nathanael>
Component: gaimAssignee: Warren Togami <wtogami>
Status: CLOSED UPSTREAM QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 5CC: eblanton, jakub, lschiere+bugs, mark, redhat-bugzilla, roland, stu, wtogami
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-03-08 04:22:05 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 171491    

Description Nathanael Noblet 2006-03-07 20:46:44 UTC
Description of problem:
gaim crashes on latest yum updates of March 7th (glibc-2.4-1, kernel .2025)

Version-Release number of selected component (if applicable):



How reproducible:
always.

Steps to Reproduce:
1. start gaim either from a console by entering 'gaim' or from menu
  
Actual results:
program crash

Expected results:
a working program.

Additional info:
*** glibc detected *** gaim: free(): invalid pointer: 0x08259e40 ***
======= Backtrace: =========
/lib/libc.so.6[0x78df18]
/lib/libc.so.6(__libc_free+0x79)[0x79141d]
/usr/lib/libglib-2.0.so.0(g_free+0x31)[0x4834d1]
gaim(gaim_privacy_deny_remove+0xd8)[0xddcf08]
/usr/lib/gaim/libmsn.so(msn_got_lst_user+0xfb)[0x70e72b]
/usr/lib/gaim/libmsn.so[0x70bb07]
/usr/lib/gaim/libmsn.so(msn_cmdproc_process_cmd+0xee)[0x6f4b5e]
/usr/lib/gaim/libmsn.so(msn_cmdproc_process_cmd_text+0x5f)[0x6f4cbf]
/usr/lib/gaim/libmsn.so[0x7044be]
gaim[0xe2f3a2]
/usr/lib/libglib-2.0.so.0[0x4a4c3d]
/usr/lib/libglib-2.0.so.0(g_main_context_dispatch+0x16d)[0x47c09d]
/usr/lib/libglib-2.0.so.0[0x47f32f]
/usr/lib/libglib-2.0.so.0(g_main_loop_run+0x1a9)[0x47f6d9]
/usr/lib/libgtk-x11-2.0.so.0(gtk_main+0xb4)[0xfb4744]
gaim(main+0xc65)[0xe65365]
/lib/libc.so.6(__libc_start_main+0xdc)[0x73f7e4]
gaim[0xdb5bc1]
======= Memory map: ========
00111000-0020a000 r-xp 00000000 08:13
512778     /usr/lib/libX11.so.6.2.0
0020a000-0020e000 rwxp 000f9000 08:13
512778     /usr/lib/libX11.so.6.2.0
0020e000-0021d000 r-xp 00000000 08:13
512780     /usr/lib/libXext.so.6.4.0
0021d000-0021e000 rwxp 0000e000 08:13
512780     /usr/lib/libXext.so.6.4.0
0021e000-00226000 r-xp 00000000 08:13
512821     /usr/lib/libpangocairo-1.0.so.0 .1199.0
00226000-00227000 rwxp 00007000 08:13
512821     /usr/lib/libpangocairo-1.0.so.0 .1199.0
00227000-00263000 r-xp 00000000 08:13
512818     /usr/lib/libpango-1.0.so.0.1199 .0
00263000-00265000 rwxp 0003b000 08:13
512818     /usr/lib/libpango-1.0.so.0.1199 .0
00265000-00267000 r-xp 00000000 08:13 2123914    /lib/libdl-2.4.so
00267000-00268000 r-xp 00001000 08:13 2123914    /lib/libdl-2.4.so
00268000-00269000 rwxp 00002000 08:13 2123914    /lib/libdl-2.4.so
00269000-0026b000 r-xp 00000000 08:13
512776     /usr/lib/libXau.so.6.0.0
0026b000-0026c000 rwxp 00001000 08:13
512776     /usr/lib/libXau.so.6.0.0
0026c000-00271000 r-xp 00000000 08:13
512777     /usr/lib/libXdmcp.so.6.0.0
00271000-00272000 rwxp 00004000 08:13
512777     /usr/lib/libXdmcp.so.6.0.0
00272000-00273000 r-xp 00000000 08:13
593806     /usr/lib/ao/plugins-2/libesd.so
00273000-00274000 rwxp 00000000 08:13
593806     /usr/lib/ao/plugins-2/libesd.so
00274000-00275000 r-xp 00274000 00:00 0          [vdso]
00275000-00336000 r-xp 00000000 08:13
499216     /usr/lib/libaspell.so.15.1.3
00336000-0033a000 rwxp 000c0000 08:13
499216     /usr/lib/libaspell.so.15.1.3
0033a000-0033e000 rwxp 0033a000 00:00 0
0033e000-003c5000 r-xp 00000000 08:13
500575     /usr/lib/libgdk-x11-2.0.so.0.80 0.13
003c5000-003c8000 rwxp 00087000 08:13
500575     /usr/lib/libgdk-x11-2.0.so.0.80 0.13
003c8000-00406000 r-xp 00000000 08:13
512807     /usr/lib/libgobject-2.0.so.0.10 00.0
00406000-00407000 rwxp 0003e000 08:13
512807     /usr/lib/libgobject-2.0.so.0.10 00.0
00407000-00416000 r-xp 00000000 08:13 2123943    /lib/libpthread-2.4.so
00416000-00417000 r-xp 0000e000 08:13 2123943    /lib/libpthread-2.4.so
00417000-00418000 rwxp 0000f000 08:13 2123943    /lib/libpthread-2.4.so
00418000-0041a000 rwxp 00418000 00:00 0
0041a000-00422000 r-xp 00000000 08:13
512779     /usr/lib/libXrender.so.1.3.0
00422000-00423000 rwxp 00007000 08:13
512779     /usr/lib/libXrender.so.1.3.0
00423000-00425000 r-xp 00000000 08:13
512784     /usr/lib/libXinerama.so.1.0.0
00425000-00426000 rwxp 00001000 08:13
512784     /usr/lib/libXinerama.so.1.0.0
00426000-00429000 r-xp 00000000 08:13
512781     /usr/lib/libXrandr.so.2.0.0
00429000-0042a000 rwxp 00002000 08:13
512781     /usr/lib/libXrandr.so.2.0.0
0042a000-00433000 r-xp 00000000 08:13
512783     /usr/lib/libXcursor.so.1.0.2
00433000-00434000 rwxp 00008000 08:13
512783     /usr/lib/libXcursor.so.1.0.2
00434000-00438000 r-xp 00000000 08:13
512782     /usr/lib/libXfixes.so.3.0.0
00438000-00439000 rwxp 00003000 08:13
512782     /usr/lib/libXfixes.so.3.0.0
00439000-0044b000 r-xp 00000000 08:13 512709     /usr/lib/libz.so.1.2.3
0044b000-0044c000 rwxp 00011000 08:13 512709     /usr/lib/libz.so.1.2.3
0044c000-0044d000 r-xp 00000000 08:13 495123     /usAborted

Comment 1 Warren Togami 2006-03-07 21:43:23 UTC
gaim hasn't changed, so are you implying this is a new glibc problem?

Can you downgrade your glibc and retest it?
When did gaim last work properly?


Comment 2 Nathanael Noblet 2006-03-07 22:32:08 UTC
Last worked properly this morning before yum update.

At the risk of sounding incompetent, how do I get the previous version. I can
only see the new ones in the repos.

Comment 3 Warren Togami 2006-03-07 22:44:12 UTC
Hmm, we don't have the older glibc build available anymore. =(

I'll soon copy for you a newer version to test.  i386 right?


Comment 4 Warren Togami 2006-03-07 22:47:55 UTC
Try "gaim -d"
Does gaim crash immediately, or only after doing a bunch of stuff?
If the latter case, please attach a log of this to this bug.


Comment 5 Nathanael Noblet 2006-03-08 00:39:12 UTC
Oddly enough, it no longer crashes!?? Here is what I did since I posted. As I
needed gaim working, and yum update gave no update to gaim. I downloaded the src
rpm for gaim-2.0.0beta2. I have a user setup to build rpms. Did so, and
installed that. It worked immediately. I received your request for a downgrade
of glibc. So started looking around. Then when you asked for a "gaim -d" output,
I "rpm -e gaim" and "yum install gaim" to get the FC5 version. Started gaim, it
worked!? Anything else you want me to do?

Comment 6 Roland McGrath 2006-03-08 00:44:01 UTC
Unless there was some snafu on your end meaning that you did not the first time
have the same set of rpms installed that you thought you did, then the only
likely difference is prelinking.  A cron job runs each morning that does
prelinking on things that have been installed since the last run.  When you
upgrade an rpm or forcibly reinstall the same rpm, this clears the effects of
prelink.  So you might try either waiting for the cron job or manually
prelinking, and then see if the problem reappears.  If it does not reappear,
then chalk it up to gremlins.


Comment 7 Stu Tomlinson 2006-03-08 01:40:54 UTC
It's possible that this was caused by a particular buddy on your list who was
on- or off-line when you witnessed the crash.

If you see it again, a debug log (from gaim -d > gaim_debug.log) might help. 

If it is specific to a particular buddy on your list it would be helpful if you
can find out what client they are using.

Comment 8 Joshua M. Thompson 2006-03-08 02:51:41 UTC
I think I have narrowed this down a bit further. The crash for me started when I
tried to remove some screen names from the block list of one of my AIM accounts.
From that point on gaim would crash during startup. I did a debug and it appears
the crash happens when gaim tries to synchronize the server and local buddy lists:

oscar: ssi: syncing local list and server list
oscar: ssi: removing deny AbsoFricnLutely from local list
*** glibc detected *** gaim: free(): invalid pointer: 0x08618348 ***
======= Backtrace: =========
/lib/libc.so.6[0xfdbf18]
/lib/libc.so.6(__libc_free+0x79)[0xfdf41d]
/usr/lib/libglib-2.0.so.0(g_free+0x31)[0x46e4d1]
gaim(gaim_privacy_deny_remove+0xd8)[0xdb1f08]
/usr/lib/gaim/liboscar.so[0xf1507e]
/usr/lib/gaim/liboscar.so[0xf084a3]
/usr/lib/gaim/liboscar.so(aim_rxdispatch+0x2ef)[0xf02d0f]
/usr/lib/gaim/liboscar.so[0xf0d01e]
gaim[0xe043a2]
/usr/lib/libglib-2.0.so.0[0x48fc3d]
/usr/lib/libglib-2.0.so.0(g_main_context_dispatch+0x16d)[0x46709d]
/usr/lib/libglib-2.0.so.0[0x46a32f]
/usr/lib/libglib-2.0.so.0(g_main_loop_run+0x1a9)[0x46a6d9]
/usr/lib/libgtk-x11-2.0.so.0(gtk_main+0xb4)[0x607744]
gaim(main+0xc65)[0xe3a365]
/lib/libc.so.6(__libc_start_main+0xdc)[0xf8d7e4]
gaim[0xd8abc1]
======= Memory map: ========
00111000-0020a000 r-xp 00000000 03:01 5931054    /usr/lib/libX11.so.6.2.0
0020a000-0020e000 rwxp 000f9000 03:01 5931054    /usr/lib/libX11.so.6.2.0
0020e000-002d0000 r-xp 00000000 03:01 3941572    /usr/lib/libaspell.so.15.1.3
002d0000-002d5000 rwxp 000c1000 03:01 3941572    /usr/lib/libaspell.so.15.1.3
002d5000-002d9000 rwxp 002d5000 00:00 0
002d9000-00360000 r-xp 00000000 03:01 3935941    /usr/lib/libgdk-x11-2.0.so.0.800.13
00360000-00363000 rwxp 00087000 03:01 3935941    /usr/lib/libgdk-x11-2.0.so.0.800.13
00363000-0037d000 r-xp 00000000 03:01 5931078    /usr/lib/libatk-1.0.so.0.1112.0
0037d000-0037f000 rwxp 00019000 03:01 5931078    /usr/lib/libatk-1.0.so.0.1112.0
0037f000-003a2000 r-xp 00000000 03:01 8945815    /lib/libm-2.4.so
003a2000-003a3000 r-xp 00022000 03:01 8945815    /lib/libm-2.4.so
003a3000-003a4000 rwxp 00023000 03:01 8945815    /lib/libm-2.4.so
003a4000-003ac000 r-xp 00000000 03:01 3935852   
/usr/lib/libpangocairo-1.0.so.0.1199.0
003ac000-003ad000 rwxp 00007000 03:01 3935852   
/usr/lib/libpangocairo-1.0.so.0.1199.0
003ad000-003fe000 r-xp 00000000 03:01 3935848    /usr/lib/libcairo.so.2.2.3
003fe000-003ff000 rwxp 00051000 03:01 3935848    /usr/lib/libcairo.so.2.2.3
003ff000-0043d000 r-xp 00000000 03:01 5931046    /usr/lib/libgobject-2.0.so.0.1000.0
0043d000-0043e000 rwxp 0003e000 03:01 5931046    /usr/lib/libgobject-2.0.so.0.1000.0
0043e000-00440000 r-xp 00000000 03:01 8945804    /lib/libdl-2.4.so
00440000-00441000 r-xp 00001000 03:01 8945804    /lib/libdl-2.4.so
00441000-00442000 rwxp 00002000 03:01 8945804    /lib/libdl-2.4.so
00442000-004d3000 r-xp 00000000 03:01 5440127    /usr/lib/libglib-2.0.so.0.1000.0
004d3000-004d4000 rwxp 00091000 03:01 5440127    /usr/lib/libglib-2.0.so.0.1000.0
004d4000-004d6000 r-xp 00000000 03:01 5931052    /usr/lib/libXau.so.6.0.0
004d6000-004d7000 rwxp 00001000 03:01 5931052    /usr/lib/libXau.so.6.0.0
004d7000-004d8000 r-xp 00000000 03:01 4178920    /usr/lib/ao/plugins-2/libesd.so
004d8000-004d9000 rwxp 00000000 03:01 4178920    /usr/lib/ao/plugins-2/libesd.so
004d9000-004e8000 r-xp 00000000 03:01 5931069    /usr/lib/libXext.so.6.4.0
004e8000-004e9000 rwxp 0000e000 03:01 5931069    /usr/lib/libXext.so.6.4.0
004e9000-00806000 r-xp 00000000 03:01 3935980    /usr/lib/libgtk-x11-2.0.so.0.800.13
00806000-0080e000 rwxp 0031d000 03:01 3935980    /usr/lib/libgtk-x11-2.0.so.0.800.13
0080e000-00811000 rwxp 0080e000 00:00 0
00811000-00820000 r-xp 00000000 03:01 8945857    /lib/libpthread-2.4.so
00820000-00821000 r-xp 0000e000 03:01 8945857    /lib/libpthread-2.4.so
00821000-00822000 rwxp 0000f000 03:01 8945857    /lib/libpthread-2.4.so
00822000-00824000 rwxp 00822000 00:00 0
00824000-00829000 r-xp 00000000 03:01 5931053    /usr/lib/libXdmcp.so.6.0.0
00829000-0082a000 rwxp 00004000 03:01 5931dns[17093]: Oops, father has gone,
wait for me, wait...!
dns[17092]: Oops, father has gone, wait for me, wait...!

I removed the user in question from blist.xml by hand and gaim starts up fine
again now.

Comment 9 Warren Togami 2006-03-08 04:22:05 UTC
OK, this might actually be a very rare upstream gaim issue.  See if you can
reproduce it and get a gdb traceback with debuginfo installed and report the
full traceback upstream.  This is not a Fedora specific issue, so closing UPSTREAM.

Thank you for following up with detailed reports.


Comment 10 Nathanael Noblet 2006-03-08 05:44:23 UTC
It would likely be exactly as described above. I have numerous accounts on my
msn list that I no longer want. I've removed them countless times and they
always show up. The crash above was likely related to one of them not being
around as it would always crash when the window progress bar reached the
syncronizing list stage. Would it help to reproduce this crash still?

Comment 11 Warren Togami 2006-03-08 15:06:16 UTC
Yes, and feel free to attach full gdb traces here, but please also submit to
upstream.