comparison src/prpl.c @ 12108:1d4fbf553ce2

[gaim-migrate @ 14408] A patch from Sadrul "when you set an account to offline while it is "connecting", it doesn't disconnect. marv hit on this last night" committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Wed, 16 Nov 2005 00:01:23 +0000
parents fd456a3275a8
children 35c4797c5c57
comparison
equal deleted inserted replaced
12107:40724851e95e 12108:1d4fbf553ce2
287 287
288 g_return_if_fail(account != NULL); 288 g_return_if_fail(account != NULL);
289 g_return_if_fail(old_status != NULL); 289 g_return_if_fail(old_status != NULL);
290 g_return_if_fail(new_status != NULL); 290 g_return_if_fail(new_status != NULL);
291 291
292 if (gaim_status_is_online(new_status) &&
293 gaim_account_is_disconnected(account))
294 {
295 gaim_account_connect(account);
296 return;
297 }
298
299 if (!gaim_status_is_online(new_status))
300 {
301 if (!gaim_account_is_disconnected(account))
302 gaim_account_disconnect(account);
303 return;
304 }
305
292 if (gaim_account_is_connecting(account)) 306 if (gaim_account_is_connecting(account))
293 /* 307 /*
294 * We don't need to call the set_status PRPL function because 308 * We don't need to call the set_status PRPL function because
295 * the PRPL will take care of setting its status during the 309 * the PRPL will take care of setting its status during the
296 * connection process. 310 * connection process.
297 */ 311 */
298 return; 312 return;
299 313
300 if (gaim_status_is_online(new_status) &&
301 gaim_account_is_disconnected(account))
302 {
303 gaim_account_connect(account);
304 return;
305 }
306
307 if (!gaim_status_is_online(new_status))
308 {
309 if (!gaim_account_is_disconnected(account))
310 gaim_account_disconnect(account);
311 return;
312 }
313
314 prpl = gaim_find_prpl(gaim_account_get_protocol_id(account)); 314 prpl = gaim_find_prpl(gaim_account_get_protocol_id(account));
315 315
316 if (prpl == NULL) 316 if (prpl == NULL)
317 return; 317 return;
318 318