comparison src/protocols/oscar/locate.c @ 7235:03f22e564311

[gaim-migrate @ 7810] I added some deps to the rpm, those should be there, right? Also... [ 821937 ] Fix for away message tooltip In Gaim 0.71, the tooltip text for Oscar is not properly escaped. This causes away messages such as "failed <-- this is a fact, not a prediction" to break the tooltip. Other protocols do not have this issue, since they call g_markup_escape_text() in the appropriate places. The call to gaim_markup_strip_html() is not sufficient in cases such as the example, since complete HTML tags are not present but HTML special characters are. This patch simply calls g_markup_escape_text() before adding the away message to the tooltip text. Patch is against the 0.71 source, since I don't think anoymous CVS is up-to-date. --Daniel Westermann-Clark (potpieman) committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Sun, 12 Oct 2003 03:15:38 +0000
parents 6d3d8f11e765
children 0ed4d53c46f9
comparison
equal deleted inserted replaced
7234:cd0cedf0edd0 7235:03f22e564311
216 if ((userinfo->info != NULL) && (userinfo->info_len > 0)) { 216 if ((userinfo->info != NULL) && (userinfo->info_len > 0)) {
217 free(cur->info); 217 free(cur->info);
218 free(cur->info_encoding); 218 free(cur->info_encoding);
219 cur->info = (char *)malloc(userinfo->info_len); 219 cur->info = (char *)malloc(userinfo->info_len);
220 memcpy(cur->info, userinfo->info, userinfo->info_len); 220 memcpy(cur->info, userinfo->info, userinfo->info_len);
221 cur->info_encoding = strdup(userinfo->info_encoding); /* XXX - This seems to leak occasionally */ 221 cur->info_encoding = strdup(userinfo->info_encoding);
222 cur->info_len = userinfo->info_len; 222 cur->info_len = userinfo->info_len;
223 } 223 }
224 224
225 if ((userinfo->away != NULL) && (userinfo->away_len > 0)) { 225 if ((userinfo->away != NULL) && (userinfo->away_len > 0)) {
226 free(cur->away); 226 free(cur->away);
227 free(cur->away_encoding); 227 free(cur->away_encoding);
228 cur->away = (char *)malloc(userinfo->away_len); 228 cur->away = (char *)malloc(userinfo->away_len);
229 memcpy(cur->away, userinfo->away, userinfo->away_len); 229 memcpy(cur->away, userinfo->away, userinfo->away_len);
230 cur->away_encoding = strdup(userinfo->away_encoding); /* XXX - This seems to leak occasionally */ 230 cur->away_encoding = strdup(userinfo->away_encoding);
231 cur->away_len = userinfo->away_len; 231 cur->away_len = userinfo->away_len;
232 } 232 }
233 } 233 }
234 234
235 static void aim_locate_dorequest(aim_session_t *sess) { 235 static void aim_locate_dorequest(aim_session_t *sess) {