Mercurial > pidgin
diff src/protocols/msn/slp.c @ 12618:204bd8fac61f
[gaim-migrate @ 14954]
SF Patch #1355796 from Sadrul
This fixes the custom smiley bug where your text gets smilies from the other party in the conversation.
This is a bit of a hack, but it fix things until such time as the smiley tree stuff can be reworked.
" From the kwiki:
If someone uses an MSN smiley, it shows up when I type
the textual representation of it. For example, someone
set a smiley (a rainbow flashy question mark) for ? and
it showed up (on my side, I have no idea about theirs)
for every ? I typed. /luke as I understand this report,
the problem is that the custom smiley should be
restricted to exactly one conversation but is in fact
spanning the account/
* (sadrul) It appears what happens is, the custom
smiley is added to the smiley-tree for that
conversation-imhtml. So whenever any new message is
going to be added to the imhtml, it looks up the
smiley-tree first, and since the "?" (or anything else)
matches the smiley, it converts it to the smiley. At
first glance, it seems the fix would be non-trivial. It
will probably be necessary to distinguish between
custom-smileys (and also messages added to the imhtml)
of the sender and the receiver.
==== end ====
What this patch does is, it temporarily replaces the
smiley-tree for the conversation-imhtml with the
smiley-tree of the conversation-entrybox. I think this
will work because the smiley-trees of both these
imhtml-s are initially the same. When a custom smiley
is received, it is added the smiley-tree of the
conversation-imhtml. So temporarily restoring the
smiley-tree with the original smiley-tree (that in
conv-entrybox) should fix the problem."
committer: Tailor Script <tailor@pidgin.im>
| author | Richard Laager <rlaager@wiktel.com> |
|---|---|
| date | Thu, 22 Dec 2005 04:07:21 +0000 |
| parents | fc464a0abccc |
| children | d8e8feac6cce |
line wrap: on
line diff
--- a/src/protocols/msn/slp.c Thu Dec 22 04:07:00 2005 +0000 +++ b/src/protocols/msn/slp.c Thu Dec 22 04:07:21 2005 +0000 @@ -831,7 +831,7 @@ conv = gaim_conversation_new(GAIM_CONV_TYPE_IM, session->account, who); } - if (gaim_conv_custom_smiley_add(conv, smile, "sha1", sha1c)) { + if (gaim_conv_custom_smiley_add(conv, smile, "sha1", sha1c, TRUE)) { msn_slplink_request_object(slplink, smile, got_emoticon, NULL, obj); }
