[MPlayer-dev-eng] [PATCH] use system locale instead of C locale

KO Myung-Hun komh at chollian.net
Sun May 24 07:37:33 CEST 2009


Hi/2.

KO Myung-Hun wrote:
> Hi/2.
>
> Reimar Döffinger wrote:
>> On Tue, May 19, 2009 at 11:20:02PM +0900, KO Myung-Hun wrote:
>>  
>>> I've fixed by allocating buffer for 'charset'. OS/2 implementation 
>>> of nl_langinfo( CODESET ) returns the static variable. So even 
>>> though if we got 'charset' by setting locale to system one, it is 
>>> changed to new one after setting locale to C. But we should accept 
>>> memory-leak. Fine ?
>>>     
>>
>> The generic (in getch2.c) code needs the same change.
>> Also the code for getch2-win.c should be changed to use malloced memory
>> too, and get_term_charset get a documentation stating it will return
>> a malloced string.
>>
>>   
>
> Ok. I'll do that later.

I did.

>
>>>> 2.  stream/asf_mmst_streaming.c uses nl_langinfo(CODESET) to select 
>>>> 'from code' of iconv_open(). But if C locale is used, national 
>>>> characters such as DBCS are not converted correctly to UTF-16LE.
>>>>       
>>> And I wrapped setlocale() around nl_langinfo()  to use system 
>>> locale. This enables to use URL consisted of national characters.
>>>     
>>
>> As I said, this can't be done because setlocale is not thread-safe.
>>   
>
> If so, how about introducting a new global variable for terminal 
> charset such as mp_term_charset.
>
>> Also I consider the whole idea nonsense, why should the URL be encoded
>> in the local encoding? 
>
> But, actually filenames consisted of national characters are being 
> used. And in case of Internet Explorer, the option whether to use 
> UTF-8 encoding for filename or not is provided. In addition, I think 
> the reason why nl_langinfo() is used, is to support such a thing.
>
>> That would mean it would be completely impossible
>> to play a Japanese URL on e.g. a US Windows version.
>>   
>
> This problem is also true for the current method.
>
>> IMO unless someone has a better idea, the source charset should just be
>> set to UTF-8.
>>   
>
> I think we'd better introduce a option whether to use UTF-8 or 
> national characters for URL such as -usenlsurl as IE does.
>

I used 'MPLAYER_CHARSET'. If it is not set, UTF-8 is used.

-- 
KO Myung-Hun

Using Mozilla SeaMonkey 1.1.16
Under OS/2 Warp 4 for Korean with FixPak #15
On AMD ThunderBird 1 GHz with 512 MB RAM

Korean OS/2 User Community : http://www.ecomstation.co.kr


-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: getch2.diff
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/attachments/20090524/f6021adc/attachment.txt>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: asf_mmst_streaming.diff
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/attachments/20090524/f6021adc/attachment.asc>


More information about the MPlayer-dev-eng mailing list