Mercurial > pidgin.yaz
view src/mediastreamer/msAlawenc.h @ 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 | e67993da8a22 |
children |
line wrap: on
line source
/* The mediastreamer library aims at providing modular media processing and I/O for linphone, but also for any telephony application. Copyright (C) 2001 Simon MORLAT simon.morlat@linphone.org This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #ifndef MSALAWENCODER_H #define MSALAWENCODER_H #include "mscodec.h" /*this is the class that implements a ALAWencoder filter*/ #define MSALAWENCODER_MAX_INPUTS 1 /* max output per filter*/ typedef struct _MSALAWEncoder { /* the MSALAWEncoder derivates from MSFilter, so the MSFilter object MUST be the first of the MSALAWEncoder object in order to the object mechanism to work*/ MSFilter filter; MSFifo *f_inputs[MSALAWENCODER_MAX_INPUTS]; MSFifo *f_outputs[MSALAWENCODER_MAX_INPUTS]; } MSALAWEncoder; typedef struct _MSALAWEncoderClass { /* the MSALAWEncoder derivates from MSFilter, so the MSFilter class MUST be the first of the MSALAWEncoder class in order to the class mechanism to work*/ MSFilterClass parent_class; } MSALAWEncoderClass; /* PUBLIC */ #define MS_ALAWENCODER(filter) ((MSALAWEncoder*)(filter)) #define MS_ALAWENCODER_CLASS(klass) ((MSALAWEncoderClass*)(klass)) MSFilter * ms_ALAWencoder_new(void); /* FOR INTERNAL USE*/ void ms_ALAWencoder_init(MSALAWEncoder *r); void ms_ALAWencoder_class_init(MSALAWEncoderClass *klass); void ms_ALAWencoder_destroy( MSALAWEncoder *obj); void ms_ALAWencoder_process(MSALAWEncoder *r); /* tuning parameters :*/ #define ALAW_ENCODER_WMAXGRAN 160 #define ALAW_ENCODER_RMAXGRAN 320 #endif