MantisBT - NetSurf
View Issue Details
0002578NetSurfAmiga-specificpublic2017-11-23 22:062020-06-01 23:46
ReporterChris Young 
Assigned ToChris Young 
PlatformAmigaOSAmigaOSOS Version4.1
Product Version3.8 
Target Version3.11Fixed in Version3.11 
Fixed in CI build #5170
Reported in CI build #4249
URL of problem page
Summary0002578: Unable to type using Amiga-1251 charset
DescriptionWhen Locale is set to the Amiga-1251 character set, it is impossible to type anything into NetSurf!
Steps To ReproduceSet Locale to Russian, Amiga-1251, open NetSurf and type something in the web page.
Additional InformationThis is caused by libiconv not being aware of this old Amiga-specific character set.
TagsNo tags attached.
Attached Files

Chris Young   
2017-11-23 22:09   
A workaround is to use the ISO-8859-5 character set for the system rather than the old Amiga-1251. (this is not an option on OS3)

The solution will be to rewrite utf8_from/to_local to use codesets.library instead, which is aware of these old weird character sets.
Chris Young   
2017-12-09 18:27   
A second workaround is to set local_charset:Windows-1251 in choices. This overrides what NetSurf thinks the system charset is, there are minimal differences between Amiga-1251 and Windows-1251 and iconv knows of the latter.
Vincent Sanders   
2019-07-01 13:01   
I removed this as targeted for 3.9 as that release is now and this bug remains unfixed
Chris Young   
2020-05-26 15:17   
Modified charset conversion code to use codesets.library and fall back to iconv if not available.
OS3 now gets Codesets' auto detection of the local charset (there is no way of overriding this currently). OS4 uses the codeset number from the current locale (Codesets was not determining this correctly so it is set manually).
Have tested in Russian Amiga-1251 and both input and output is working correctly.

Issue History
2017-11-23 22:06Chris YoungNew Issue
2017-11-23 22:06Chris YoungStatusnew => assigned
2017-11-23 22:06Chris YoungAssigned To => Chris Young
2017-11-23 22:09Chris YoungStatusassigned => confirmed
2017-11-23 22:09Chris YoungNote Added: 0001689
2017-12-09 18:27Chris YoungNote Added: 0001692
2018-08-28 11:40Vincent SandersTarget Version3.8 => 3.9
2019-07-01 13:01Vincent SandersTarget Version3.9 =>
2019-07-01 13:01Vincent SandersNote Added: 0001982
2020-05-26 15:17Chris YoungStatusconfirmed => resolved
2020-05-26 15:17Chris YoungResolutionopen => fixed
2020-05-26 15:17Chris YoungFixed in Version => 3.11
2020-05-26 15:17Chris YoungFixed in CI build # => 5170
2020-05-26 15:17Chris YoungNote Added: 0002203
2020-05-27 09:02Vincent SandersStatusresolved => closed
2020-05-27 09:25Vincent SandersStatusclosed => resolved
2020-05-27 09:25Vincent SandersTarget Version => 3.11