# HG changeset patch # User Luke Schierer # Date 1095562380 0 # Node ID 700f8fb9e581ae32eea5e62d06e3e8e7b013b8f8 # Parent ae6157393415882faad77558658249ebd524b382 [gaim-migrate @ 11002] commit the 2 xfr patches to msn from shx to head. these went in just before 1.0.0 was released fixing some bugs committer: Tailor Script diff -r ae6157393415 -r 700f8fb9e581 src/protocols/msn/cmdproc.c --- a/src/protocols/msn/cmdproc.c Sat Sep 18 23:47:36 2004 +0000 +++ b/src/protocols/msn/cmdproc.c Sun Sep 19 02:53:00 2004 +0000 @@ -288,6 +288,9 @@ cb = g_hash_table_lookup(trans->callbacks, cmd->command); } + if (cb == NULL && cmdproc->cbs_table->fallback != NULL) + cb = g_hash_table_lookup(cmdproc->cbs_table->fallback, cmd->command); + if (cb != NULL) { cb(cmdproc, cmd); diff -r ae6157393415 -r 700f8fb9e581 src/protocols/msn/notification.c --- a/src/protocols/msn/notification.c Sat Sep 18 23:47:36 2004 +0000 +++ b/src/protocols/msn/notification.c Sun Sep 19 02:53:00 2004 +0000 @@ -1256,7 +1256,7 @@ msn_table_add_cmd(cbs_table, NULL, "URL", url_cmd); - msn_table_add_cmd(cbs_table, NULL, "XFR", xfr_cmd); + msn_table_add_cmd(cbs_table, "fallback", "XFR", xfr_cmd); msn_table_add_error(cbs_table, "ADD", add_error); /* msn_table_add_error(cbs_table, "REA", rea_error); */ diff -r ae6157393415 -r 700f8fb9e581 src/protocols/msn/table.c --- a/src/protocols/msn/table.c Sat Sep 18 23:47:36 2004 +0000 +++ b/src/protocols/msn/table.c Sun Sep 19 02:53:00 2004 +0000 @@ -46,6 +46,7 @@ table->errors = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, NULL); table->async = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, NULL); + table->fallback = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, NULL); return table; } @@ -60,6 +61,7 @@ g_hash_table_destroy(table->errors); g_hash_table_destroy(table->async); + g_hash_table_destroy(table->fallback); g_free(table); } @@ -79,6 +81,10 @@ { cbs = table->async; } + else if (strcmp(command, "fallback") == 0) + { + cbs = table->fallback; + } else { cbs = g_hash_table_lookup(table->cmds, command); diff -r ae6157393415 -r 700f8fb9e581 src/protocols/msn/table.h --- a/src/protocols/msn/table.h Sat Sep 18 23:47:36 2004 +0000 +++ b/src/protocols/msn/table.h Sun Sep 19 02:53:00 2004 +0000 @@ -41,6 +41,7 @@ GHashTable *errors; GHashTable *async; + GHashTable *fallback; }; MsnTable *msn_table_new();