Mercurial > pidgin
comparison libgaim/protocols/msn/command.c @ 20390:d634f88e25d8
msn.tgz from SF Patch #1621854 from Ka-Hing Cheung
"This tarball brings soc-2006-msnp13 up to head. In addition to that it also
fixes a crash with sending offline messages.
I wasn't able to generate a diff against that branch, svn seems to insist
on diff'ing against HEAD after I run the merge command. After running `svn
merge -r 16309:HEAD https://gaim.svn.sourceforge.net/svnroot/gaim/trunk` on
the soc-2006-msnp13 you can replace the msn directory with the attached
tarball. The fix for offline messaging is on msn.c:901:
if (!session->oim)
session->oim = msn_oim_new(session)"
committer: Richard Laager <rlaager@wiktel.com>
author | Ka-Hing Cheung <khc@hxbc.us> |
---|---|
date | Sun, 15 Apr 2007 02:18:17 +0000 |
parents | e354528c4163 |
children | 9755b2f7bb0f |
comparison
equal
deleted
inserted
replaced
20389:e354528c4163 | 20390:d634f88e25d8 |
---|---|
110 msn_command_from_string(const char *string) | 110 msn_command_from_string(const char *string) |
111 { | 111 { |
112 MsnCommand *cmd; | 112 MsnCommand *cmd; |
113 char *tmp; | 113 char *tmp; |
114 char *param_start; | 114 char *param_start; |
115 char *param; | |
116 int c; | |
117 | 115 |
118 g_return_val_if_fail(string != NULL, NULL); | 116 g_return_val_if_fail(string != NULL, NULL); |
119 | 117 |
120 tmp = g_strdup(string); | 118 tmp = g_strdup(string); |
121 param_start = strchr(tmp, ' '); | 119 param_start = strchr(tmp, ' '); |
125 | 123 |
126 if (param_start) | 124 if (param_start) |
127 { | 125 { |
128 *param_start++ = '\0'; | 126 *param_start++ = '\0'; |
129 cmd->params = g_strsplit(param_start, " ", 0); | 127 cmd->params = g_strsplit(param_start, " ", 0); |
128 } | |
129 | |
130 if (cmd->params != NULL) | |
131 { | |
132 char *param; | |
133 int c; | |
130 | 134 |
131 for (c = 0; cmd->params[c]; c++); | 135 for (c = 0; cmd->params[c]; c++); |
132 cmd->param_count = c; | 136 cmd->param_count = c; |
133 | 137 |
134 param = cmd->params[0]; | 138 param = cmd->params[0]; |
135 | 139 |
136 cmd->trId = is_num(param) ? atoi(param) : 0; | 140 cmd->trId = is_num(param) ? atoi(param) : 0; |
137 } | 141 }else{ |
138 else | |
139 cmd->trId = 0; | 142 cmd->trId = 0; |
140 } | 143 } |
144 | |
141 /*add payload Length checking*/ | 145 /*add payload Length checking*/ |
142 msn_set_payload_len(cmd); | 146 msn_set_payload_len(cmd); |
143 gaim_debug_info("MaYuan","get payload len:%d\n",cmd->payload_len); | 147 gaim_debug_info("MaYuan","get payload len:%d\n",cmd->payload_len); |
144 | 148 |
145 msn_command_ref(cmd); | 149 msn_command_ref(cmd); |