Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 234399 - gaim update crashes when changing status (regression -> beta6 update)
Summary: gaim update crashes when changing status (regression -> beta6 update)
Alias: None
Product: Fedora
Classification: Fedora
Component: gaim
Version: 6
Hardware: x86_64
OS: Linux
Target Milestone: ---
Assignee: Warren Togami
QA Contact:
Depends On:
TreeView+ depends on / blocked
Reported: 2007-03-28 21:16 UTC by drago01
Modified: 2007-11-30 22:12 UTC (History)
8 users (show)

Fixed In Version: 2.0.1-1.fc6
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2007-06-04 19:53:40 UTC

Attachments (Terms of Use)
status.xml file in question (deleted)
2007-04-09 06:51 UTC, drago01
no flags Details
file with corrected accounts (deleted)
2007-04-09 06:54 UTC, drago01
no flags Details
Patch v1 (deleted)
2007-04-29 03:33 UTC, Kai Engert (:kaie) (inactive account)
no flags Details | Diff

Description drago01 2007-03-28 21:16:54 UTC
Description of problem:

The new gaim update is useless due to regressions.

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


How reproducible:

Steps to Reproduce:
1. start gaim with an (icq?)account
2. change status to away (without typing a message) or to invisble
3. segfault
Actual results:


Expected results:

no segfault; should work like beta5 did

Additional info:

It wasn't easy to downgrade because it changed the account type from prpl-oscar
to prpl-icq which older gaim does not understand...
so its not easy for a user to find the problem and workaround it.
so this bug need to be fixed! 
btw why wasn't this package in updates testing?

Comment 1 Warren Togami 2007-03-28 22:38:50 UTC
BTW, what gaim plugins do you have installed?

Please try:
rpm -qa 'gaim*'

Then re-test gaim with those plugins removed. 
Any different?

Comment 2 drago01 2007-03-29 16:58:39 UTC
I deleted all extra plugins (only had gaim-libnotify installed).
I tryed to create a backtrace but as soon as it segfaults X hangs (only happens
when running inside gdb).
the last message showed that it is caused by a strcmp() call.
note: I am on x86_64 .. could this be because of this?

Comment 3 drago01 2007-04-01 12:23:13 UTC
any idea what I can do to debugg this?
when the crash happens I cannot do anything in X execpt moving my mouse...
when I change to a vt and kill the gdb process X works but I cannot get a
backtrace this way.
the backtrace created from a core file looks like this:
#0  0x0000003fbf2301b5 in raise () from /lib64/
#1  0x0000003fbf231b20 in abort () from /lib64/
#2  0x000000000046ec9c in main ()

which is useless....

Comment 4 drago01 2007-04-01 12:44:08 UTC
I solved the problem!
after deleting status.xml from .gaim and starting gaim 2 times the crashes stopped.

Comment 5 Jan Kratochvil 2007-04-02 14:15:38 UTC
(In reply to comment #3)
> the backtrace created from a core file looks like this:
> #0  0x0000003fbf2301b5 in raise () from /lib64/
> #1  0x0000003fbf231b20 in abort () from /lib64/
> #2  0x000000000046ec9c in main ()
> which is useless....

* In general use `thread apply all bt' (not needed here as I see now).

* Check you have installed glibc-debuginfo, gaim-debuginfo and -debuginfo for
  any other library listed in the backtrace.

According to your dump there occured SIGSEGV (main() should not be there, there
should be sighandler() after you install gaim-debuginfo).

I believe the backtrace should get extended after supplying gaim-debuginfo.
If not it would be useful to send the core file at least to me privately.

Comment 6 Jan Kratochvil 2007-04-02 14:24:36 UTC
Sorry for the Hardware field typo.

Comment 7 drago01 2007-04-07 11:57:13 UTC
sorry I am busy right now... I still have the broken (the one from beta5)
status.xml file I will generate the backtrace when I have some time.

Comment 8 drago01 2007-04-09 06:49:32 UTC
this _is_ a bug. A app should not crash after a update. It should convert the
config files to the new format by itself.

Comment 9 drago01 2007-04-09 06:51:49 UTC
Created attachment 151945 [details]
status.xml file in question

here is the file (generated from beta5) that was coausing the crashes.

Comment 10 drago01 2007-04-09 06:54:04 UTC
Created attachment 151946 [details]
file with corrected accounts

Comment 11 Kai Engert (:kaie) (inactive account) 2007-04-29 02:33:14 UTC
I experience this crash, too, on my own system and on the system of a remote
friend where I have set up FC6.

I installed gaim-debuginfo and was able to get a stacktrace.
We seem to crash because strcmp is called with a NULL parameter.

#0  0x00b6bee8 in strcmp () from /lib/
#1  0x080d9024 in activate_currently_selected_status (status_box=0x98c1020) at
#2  0x080d9770 in remove_typing_cb (status_box=0x98c1020) at gtkstatusbox.c:2253
#3  0x037d5a16 in g_source_get_current_time () from /lib/
#4  0x037d5442 in g_main_context_dispatch () from /lib/
#5  0x037d841f in g_main_context_check () from /lib/
#6  0x037d87c9 in g_main_loop_run () from /lib/
#7  0x03abe554 in gtk_main () from /usr/lib/
#8  0x080b300b in main (argc=1, argv=0xbfdc5c54) at gtkmain.c:817

(gdb) print gaim_status_type_get_id(sub_type)
$23 = 0x0
(gdb) print gaim_status_type_get_id(acct_status_type)
$24 = 0x96a1f28 "available"

strcmp(0, "available") => crash

Comment 12 Kai Engert (:kaie) (inactive account) 2007-04-29 02:35:50 UTC
  const GaimStatusType *sub_type = gaim_savedstatus_substatus_get_type(sub);
  if (!strcmp(gaim_status_type_get_id(sub_type),

Comment 13 Kai Engert (:kaie) (inactive account) 2007-04-29 03:33:36 UTC
Created attachment 153724 [details]
Patch v1

This patch fixes the crash for me.
Successfully tested on both systems.
(No change to status.xml was necessary)

I'm include a changelog entry, feel free to change it again.

Comment 14 Stu Tomlinson 2007-06-04 19:53:40 UTC
This is fixed in Pidgin 2.0.1

Note You need to log in before you can comment on or make changes to this bug.