[horde] IMP: Encoding problem in message view
Michael J Rubinsky
mrubinsk at horde.org
Mon Jan 11 20:45:13 UTC 2016
Quoting 김 덕곤 <dgkim at dgkim.net>:
> 2015. 12. 31. 오후 10:29에 Jan Schneider 이(가) 쓴 글:
>>
>> Zitat von 김 덕곤 <dgkim at dgkim.net>:
>>
>>> Hello.
>>>
>>> When I opening a message(that is not encoded in UTF-8),
>>> character is not shown in correct encoding.
>>>
>>> But, when I reply or forward it, correct character is shown.
>>> (And, the replied message is encoded in UTF-8)
>>>
>>> When I open a message as popup(Show all parts, and click on a part),
>>> character is also in a wrong encoding,
>>> but if I change character encoding to Unicode in a Browser option,
>>> correct character is shown.
>>> This means server already converted form encoding to encoding,
>>> but wrong Content-Type is sent.
>>>
>>> A message's encoding is 'ks_c_5601-1987'
>>> Web page's encoding is 'UTF-8'.
>>>
>>> Any suggestions?
>>>
>>> Versions.
>>> Horde : 5.2.8
>>> IMP : 6.2.11
>>>
>>> --
>>> Horde mailing list
>>> Frequently Asked Questions: http://horde.org/faq/
>>> To unsubscribe, mail: horde-unsubscribe at lists.horde.org
>>
>> https://bugs.horde.org/ticket/14149
>>
> I think I figured out why this happens.
>
> In Domhtml, at the line of 87, there is call to "convertCharset". as follows.
>
> 86 $this->_loadHTML(
> 87 $this->_xmlencoding .
> Horde_String::convertCharset($text, $c harset, 'UTF-8')
> 88 );
>
> Here is the call-stack dumped from Horde_Domhtml::__construct().
>
> __construct: Called from /usr/share/php/Horde/Text/Filter/Xss.php:72
> __construct 1. Horde_Text_Filter_Xss->postProcess()
> /usr/share/php/Horde/Text/Filter.php:108
> __construct 2. Horde_Text_Filter->filter()
> /usr/share/php/Horde/Core/Factory/TextFilter.php:72
> __construct 3. Horde_Core_Factory_TextFilter->filter() -:-
> __construct 4. call_user_func()
> /usr/share/php/Horde/Mime/Viewer/Base.php:438
> __construct 5. Horde_Mime_Viewer_Base->_textFilter()
> /usr/share/php/Horde/Mime/Viewer/Html.php:164
> __construct 6. Horde_Mime_Viewer_Html->_cleanHTML()
> /var/www/html/horde/imp/lib/Mime/Viewer/Html.php:179
> __construct 7. IMP_Mime_Viewer_Html->_IMPrender()
> /var/www/html/horde/imp/lib/Mime/Viewer/Html.php:75
> __construct 8. IMP_Mime_Viewer_Html->_renderInline()
> /usr/share/php/Horde/Mime/Viewer/Base.php:156
> __construct 9. Horde_Mime_Viewer_Base->render()
> /var/www/html/horde/imp/lib/Contents.php:654
> __construct 10. IMP_Contents->renderMIMEPart()
> /var/www/html/horde/imp/lib/Mime/Viewer/Alternative.php:128
> __construct 11. IMP_Mime_Viewer_Alternative->_IMPrender()
> /var/www/html/horde/imp/lib/Mime/Viewer/Alternative.php:54
> __construct 12. IMP_Mime_Viewer_Alternative->_renderInline()
> /usr/share/php/Horde/Mime/Viewer/Base.php:156
> __construct 13. Horde_Mime_Viewer_Base->render()
> /var/www/html/horde/imp/lib/Contents.php:654
> __construct 14. IMP_Contents->renderMIMEPart()
> /var/www/html/horde/imp/lib/Contents.php:1462
> __construct 15. IMP_Contents->getInlineOutput()
> /var/www/html/horde/imp/lib/Ajax/Application/ShowMessage.php:296
> __construct 16. IMP_Ajax_Application_ShowMessage->showMessage()
> /var/www/html/horde/imp/lib/Dynamic/Message.php:64
> __construct 17. IMP_Dynamic_Message->_init()
> /var/www/html/horde/imp/lib/Dynamic/Base.php:90
> __construct 18. IMP_Dynamic_Base->__construct()
> /var/www/html/horde/imp/dynamic.php:33
>
> I tried to find where the 'convertCharset' occurs.
>
> I found in 'Horde/Mime/Viewer/Html.php'. (line 106 to 114)
>
> 106 protected function _renderInline()
> 107 {
> 108 $html =
> $this->_cleanHTML($this->_mimepart->getContents(), array('in
> line' => true));
> 109
> 110 return $this->_renderReturn(
> 111 Horde_String::convertCharset($html->returnHtml(),
> $this->_mimepa rt->getCharset(), 'UTF-8'),
> 112 'text/html; charset=UTF-8'
> 113 );
> 114 }
>
> So I think, 'convertCharset' is unintentionally called twice.
Horde_Mime_Viewer::_renderInline() isn't (shouldn't) be called in this
context, since we are in IMP_Mime_Viewer_Html, which overrides the
parent's copy of the _renderInLine() method.
--
mike
The Horde Project
http://www.horde.org
https://www.facebook.com/hordeproject
https://www.twitter.com/hordeproject
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5751 bytes
Desc: S/MIME Signature
URL: <http://lists.horde.org/archives/horde/attachments/20160111/6a46316f/attachment-0001.bin>
More information about the horde
mailing list