Mercurial > pidgin
annotate libpurple/protocols/msn/command.c @ 20311:66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
applied changes from 614efd22968bb59c279872f991d97f3053ded4f0
through cbefbdeb71c4fe12f131d0932abeaf81bea091cb
author | Luke Schierer <lschiere@pidgin.im> |
---|---|
date | Fri, 19 Oct 2007 17:18:40 +0000 |
parents | 44b4e8bd759b |
children | 8e54d39743cd |
rev | line source |
---|---|
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2 * @file command.c MSN command functions |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3 * |
15822 | 4 * purple |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
5 * |
15822 | 6 * Purple is the legal property of its developers, whose names are too numerous |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
7 * to list here. Please refer to the COPYRIGHT file distributed with this |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
8 * source distribution. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
9 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
10 * This program is free software; you can redistribute it and/or modify |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
11 * it under the terms of the GNU General Public License as published by |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
12 * the Free Software Foundation; either version 2 of the License, or |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
13 * (at your option) any later version. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
14 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
15 * This program is distributed in the hope that it will be useful, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
18 * GNU General Public License for more details. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
19 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
20 * You should have received a copy of the GNU General Public License |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
21 * along with this program; if not, write to the Free Software |
19681
44b4e8bd759b
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
15822
diff
changeset
|
22 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
23 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
24 #include "msn.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
25 #include "command.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
26 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
27 static gboolean |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
28 is_num(char *str) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
29 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
30 char *c; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
31 for (c = str; *c; c++) { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
32 if (!(g_ascii_isdigit(*c))) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
33 return FALSE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
34 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
35 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
36 return TRUE; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
37 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
38 |
20311
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
39 /* |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
40 * check the command is the command with payload content |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
41 * if it is return TRUE |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
42 * else return FALSE |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
43 */ |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
44 static gboolean |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
45 msn_check_payload_cmd(const char *str) |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
46 { |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
47 g_return_val_if_fail(str != NULL, FALSE); |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
48 if( (!strcmp(str,"ADL")) || |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
49 (!strcmp(str,"GCF")) || |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
50 (!strcmp(str,"SG")) || |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
51 (!strcmp(str,"MSG")) || |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
52 (!strcmp(str,"RML")) || |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
53 (!strcmp(str,"UBX")) || |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
54 (!strcmp(str,"UBN")) || |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
55 (!strcmp(str,"UUM")) || |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
56 (!strcmp(str,"UBM")) || |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
57 (!strcmp(str,"FQY")) || |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
58 (!strcmp(str,"UUN")) || |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
59 (!strcmp(str,"UUX")) || |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
60 (is_num(str))){ |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
61 return TRUE; |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
62 } |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
63 |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
64 return FALSE; |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
65 } |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
66 |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
67 /* |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
68 * set command Payload length |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
69 */ |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
70 static void |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
71 msn_set_payload_len(MsnCommand *cmd) |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
72 { |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
73 char *param; |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
74 int len = 0; |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
75 |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
76 if (msn_check_payload_cmd(cmd->command) && (cmd->param_count > 0)){ |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
77 param = cmd->params[cmd->param_count - 1]; |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
78 len = is_num(param) ? atoi(param) : 0; |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
79 } |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
80 |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
81 cmd->payload_len = len; |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
82 } |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
83 |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
84 |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
85 MsnCommand * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
86 msn_command_from_string(const char *string) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
87 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
88 MsnCommand *cmd; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
89 char *tmp; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
90 char *param_start; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
91 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
92 g_return_val_if_fail(string != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
93 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
94 tmp = g_strdup(string); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
95 param_start = strchr(tmp, ' '); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
96 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
97 cmd = g_new0(MsnCommand, 1); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
98 cmd->command = tmp; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
99 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
100 if (param_start) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
101 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
102 *param_start++ = '\0'; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
103 cmd->params = g_strsplit(param_start, " ", 0); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
104 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
105 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
106 if (cmd->params != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
107 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
108 char *param; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
109 int c; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
110 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
111 for (c = 0; cmd->params[c]; c++); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
112 cmd->param_count = c; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
113 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
114 param = cmd->params[0]; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
115 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
116 cmd->trId = is_num(param) ? atoi(param) : 0; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
117 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
118 else |
20311
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
119 { |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
120 cmd->trId = 0; |
20311
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
121 } |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
122 |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
123 /*add payload Length checking*/ |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
124 msn_set_payload_len(cmd); |
66b73b0def79
This asked me to do a 3way merge in vim. Someone should check it.
Luke Schierer <lschiere@pidgin.im>
parents:
19681
diff
changeset
|
125 purple_debug_info("MSNP14","get payload len:%d\n",cmd->payload_len); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
126 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
127 msn_command_ref(cmd); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
128 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
129 return cmd; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
130 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
131 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
132 void |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
133 msn_command_destroy(MsnCommand *cmd) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
134 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
135 g_return_if_fail(cmd != NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
136 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
137 if (cmd->ref_count > 0) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
138 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
139 msn_command_unref(cmd); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
140 return; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
141 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
142 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
143 if (cmd->payload != NULL) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
144 g_free(cmd->payload); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
145 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
146 g_free(cmd->command); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
147 g_strfreev(cmd->params); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
148 g_free(cmd); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
149 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
150 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
151 MsnCommand * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
152 msn_command_ref(MsnCommand *cmd) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
153 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
154 g_return_val_if_fail(cmd != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
155 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
156 cmd->ref_count++; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
157 return cmd; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
158 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
159 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
160 MsnCommand * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
161 msn_command_unref(MsnCommand *cmd) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
162 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
163 g_return_val_if_fail(cmd != NULL, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
164 g_return_val_if_fail(cmd->ref_count > 0, NULL); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
165 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
166 cmd->ref_count--; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
167 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
168 if (cmd->ref_count == 0) |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
169 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
170 msn_command_destroy(cmd); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
171 return NULL; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
172 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
173 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
174 return cmd; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
175 } |