Mercurial > pidgin
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) { |