--- a/src/protocols/yahoo/yahoo.c Sat Mar 19 19:56:52 2005 -0500
+++ b/src/protocols/yahoo/yahoo.c Sat Mar 19 20:19:32 2005 -0500
@@ -77,19 +77,22 @@
gboolean permitted=FALSE;
switch (gc->account->perm_deny) {
- /* it would appear somewhere inside gaim, GAIM_PRIVACY can end up
+ gaim_debug_warning("yahoo", "Privacy setting was 0. If you can " + "reproduce this, please file a bug report.\n"); case GAIM_PRIVACY_ALLOW_ALL:
case GAIM_PRIVACY_DENY_ALL:
"%s blocked data received from %s (GAIM_PRIVACY_DENY_ALL)\n",
gc->account->username,who);
case GAIM_PRIVACY_ALLOW_USERS:
for( list=gc->account->permit; list!=NULL; list=list->next ) {
if ( !gaim_utf8_strcasecmp(who, gaim_normalize(gc->account, (char *)list->data)) ) {
@@ -101,6 +104,7 @@
case GAIM_PRIVACY_DENY_USERS:
/* seeing we're letting everyone through, except the deny list*/
@@ -114,6 +118,7 @@
case GAIM_PRIVACY_ALLOW_BUDDYLIST:
if ( gaim_find_buddy(gc->account,who) != NULL ) {
@@ -123,13 +128,15 @@
gc->account->username,who);
- gaim_debug(GAIM_DEBUG_INFO, "yahoo",
- "Default privacy dropthrough - we should never see this. Please report yahoo privacy bug to http://gaim.sf.net\n");
+ gaim_debug_warning("yahoo", "Privacy setting was unknown. If you can " + "reproduce this, please file a bug report.\n");
struct yahoo_packet *yahoo_packet_new(enum yahoo_service service, enum yahoo_status status, int id)
@@ -805,6 +812,16 @@
gc->account->perm_deny = 4;
serv_set_permit_deny(gc);
+ ((gc->account->perm_deny != GAIM_PRIVACY_ALLOW_BUDDYLIST) && + (gc->account->perm_deny != GAIM_PRIVACY_DENY_ALL) && + (gc->account->perm_deny != GAIM_PRIVACY_ALLOW_USERS))) + gc->account->perm_deny = GAIM_PRIVACY_DENY_USERS; + gaim_debug_info("yahoo", "Privacy defaulting to GAIM_PRIVACY_DENY_USERS.\n", gc->account->username); static void yahoo_process_notify(GaimConnection *gc, struct yahoo_packet *pkt)