Mercurial > pidgin
comparison src/protocols/msn/cmdproc.c @ 10225:ecf3ce2e2ab1
[gaim-migrate @ 11357]
This is mostly a patch from Felipe Contreras that eliminates MSN switchboard
errors and fixes MSN buddy icon syncronization, with some tweaks by me.
Thank Felipe if it works, blame me if something broke.
I also fixed a couple of text markup escaping things, fixed a glib warning that
was bugging me, fix a rare SILC crash, and make gtkstatusselector.c compile
(but do nothing) with gtk < 2.4
committer: Tailor Script <tailor@pidgin.im>
author | Stu Tomlinson <stu@nosnilmot.com> |
---|---|
date | Sun, 21 Nov 2004 17:48:09 +0000 |
parents | 700f8fb9e581 |
children | f776e117c17b |
comparison
equal
deleted
inserted
replaced
10224:ef7f9e69f03e | 10225:ecf3ce2e2ab1 |
---|---|
248 MsnTransaction *trans = NULL; | 248 MsnTransaction *trans = NULL; |
249 | 249 |
250 if (cmd->trId) | 250 if (cmd->trId) |
251 trans = msn_history_find(cmdproc->history, cmd->trId); | 251 trans = msn_history_find(cmdproc->history, cmd->trId); |
252 | 252 |
253 if (trans != NULL) | |
254 if (trans->timer) | |
255 gaim_timeout_remove(trans->timer); | |
256 | |
253 if (g_ascii_isdigit(cmd->command[0])) | 257 if (g_ascii_isdigit(cmd->command[0])) |
254 { | 258 { |
255 if (trans != NULL) | 259 if (trans != NULL) |
256 { | 260 { |
257 MsnErrorCb error_cb = NULL; | 261 MsnErrorCb error_cb = NULL; |
258 int error; | 262 int error; |
259 | 263 |
260 error = atoi(cmd->command); | 264 error = atoi(cmd->command); |
261 if (cmdproc->cbs_table->errors != NULL) | 265 |
266 if (trans->error_cb != NULL) | |
267 error_cb = trans->error_cb; | |
268 | |
269 if (error_cb == NULL && cmdproc->cbs_table->errors != NULL) | |
262 error_cb = g_hash_table_lookup(cmdproc->cbs_table->errors, trans->command); | 270 error_cb = g_hash_table_lookup(cmdproc->cbs_table->errors, trans->command); |
263 | 271 |
264 if (error_cb != NULL) | 272 if (error_cb != NULL) |
273 { | |
265 error_cb(cmdproc, trans, error); | 274 error_cb(cmdproc, trans, error); |
275 } | |
266 else | 276 else |
267 { | 277 { |
268 #if 1 | 278 #if 1 |
269 msn_error_handle(cmdproc->session, error); | 279 msn_error_handle(cmdproc->session, error); |
270 #else | 280 #else |