[Pidgin] #10961: Problem using RTL languages on the receiver side

Pidgin trac at pidgin.im
Fri Jan 22 17:02:06 EST 2010


#10961: Problem using RTL languages on the receiver side
-------------------------+--------------------------------------------------
 Reporter:  masoudim     |        Owner:  sulabh.dev         
     Type:  defect       |       Status:  new                
Milestone:               |    Component:  Yahoo!/Yahoo! JAPAN
  Version:  2.6.4        |   Resolution:                     
 Keywords:  RTL problem  |  
-------------------------+--------------------------------------------------

Comment(by Fartash):

 I've found the problem and solution for it. sulabh.dev please check it
 ASAP. It's a big bug for RTL chatters!
 In "yahoo_html_to_codes()" function which is written in
 "libpurple/protocols/yahoo/util.c" there is a new else branch to the
 inside if-else block, which picks any unknown tag and sends it the same as
 it is. In our case this else will cause the <span> tag added by pidgin
 itself by writing in RTL languages to be sent.

 There is two solutions for this problem:
 1. Add a new else-if branch to pick any span tag and ignore it.
 2. Remove the else tag completely.

 The reason for this bug is that a <span> tag will be escaped by yahoo and
 sent to the other side the same. In Pidgin when we type in an RTL
 language, the text gets surrounded with <SPAN style="direction:rtl;text-
 align:right;"></SPAN>.
 In 2.6.3 and older versions, the result string will be sent without the
 span tag but in 2.6.4 and 2.6.5 there is an exceptional branch added for
 unknown tags, which sends them the same as they are and that makes our
 problem.

-- 
Ticket URL: <http://developer.pidgin.im/ticket/10961#comment:8>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list