The sametime prpl code in the current level of pidgin in Fedora (2.5.2-1) does not check to ensure that the host given in a server redirect on login is not NULL. Adding an additional test for "(! host)" at libpurple/protocols/sametime/sametime.c line 1448 resolves this issue for me.
--- pidgin-2.5.2.orig/libpurple/protocols/sametime/sametime.c 2008-08-07 09:31:09.000000000 -0400 +++ pidgin-2.5.2/libpurple/protocols/sametime/sametime.c 2008-11-20 16:07:04.000000000 -0500 @@ -1446,6 +1446,7 @@ if(purple_account_get_bool(account, MW_KEY_FORCE, FALSE) || (! strcmp(current_host, host)) || + (! host) || (purple_proxy_connect(NULL, account, host, port, connect_cb, pd) == NULL)) { /* if we're configured to force logins, or if we're being Proposing this for upstream.
That will fail, as the segfault is in the strcmp(), and you're checking host for nullity after the call. Until upstream accepts it, can we patch pidgin for Fedora? This is causing a fair bit of trouble at $work.
diff -urN pidgin-2.5.2.orig/libpurple/protocols/sametime/sametime.c pidgin-2.5.2/libpurple/protocols/sametime/sametime.c --- pidgin-2.5.2.orig/libpurple/protocols/sametime/sametime.c 2008-08-07 09:31:09.000000000 -0400 +++ pidgin-2.5.2/libpurple/protocols/sametime/sametime.c 2008-11-20 16:18:18.000000000 -0500 @@ -1444,7 +1444,8 @@ current_host = purple_account_get_string(account, MW_KEY_HOST, MW_PLUGIN_DEFAULT_HOST); - if(purple_account_get_bool(account, MW_KEY_FORCE, FALSE) || + if((! host) || + purple_account_get_bool(account, MW_KEY_FORCE, FALSE) || (! strcmp(current_host, host)) || (purple_proxy_connect(NULL, account, host, port, connect_cb, pd) == NULL)) { Yes, including this in the next build.
This bug appears to have been reported against 'rawhide' during the Fedora 10 development cycle. Changing version to '10'. More information and reason for this action is here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping