Bug 214531

Summary: Yelp uses incorrect charset conversion for non-english manpages
Product: [Fedora] Fedora Reporter: Vladimir Mosgalin <vladimir.mv>
Component: yelpAssignee: Matthew Barnes <mbarnes>
Status: CLOSED UPSTREAM QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 6   
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-10-03 03:14:27 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Example garbage output from man:malloc none

Description Vladimir Mosgalin 2006-11-08 00:02:15 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.8.1) Gecko/20061010 Firefox/2.0

Description of problem:
Yelp doesn't display non-english manpages. It tries to, but displays only ugly characters.

Version-Release number of selected component (if applicable):
yelp-2.16.0-9.fc6.x86_64

How reproducible:
Always


Steps to Reproduce:
1. Install man-pages-ru (should work with any other localized non-latin man pages package)
2. Run yelp in corresponding locale: LANG=ru_RU.UTF-8 yelp
3. Type man:malloc in "Поиск" (search) input field.

Actual Results:
Very ugly manpage is displayed. See attached screenshot for details.

Expected Results:
Normal localized manpage.

Additional info:
Looking at the output, it's quite easy to guess what happens. The manpage, /usr/share/man/ru/man3/malloc.3.gz is UTF-8-encoded. When parsing it, yelp gets correct utf-8 input. However, for some reason it assumes that input from manpage filter is in iso8859-1 (very wrong..). So it converts it from iso8859-1 to utf-8 (output charset) and that's where that garbage comes from.

To test this, try
gunzip < /usr/share/man/ru/man3/malloc.3.gz | man2html - | iconv -fiso8859-1 -tutf-8
in terminal and the output is exactly the same as what yelp is trying to display. Without iconv, output is correct.

Comment 1 Vladimir Mosgalin 2006-11-08 00:03:46 UTC
Created attachment 140611 [details]
Example garbage output from man:malloc

Comment 2 Matthew Barnes 2007-10-02 15:46:21 UTC
Is this problem still present in Fedora 8 Test 2 or later?

Comment 3 Vladimir Mosgalin 2007-10-02 16:40:57 UTC
I don't think I'll be able to test it right now. Can anyone who has F8T2
installed check this? There are really no requirements aside from having yelp
and man-pages-ru installed..

Comment 4 Matthew Barnes 2007-10-03 03:14:27 UTC
Moving this upstream.  Please see [1] for further updates.

[1] http://bugzilla.gnome.org/show_bug.cgi?id=473040