user nl_langinfo if langinfo support present for proper chinese support, feature requested by Shixin Zheng <shixinzheng@sjtu.edu.cn>

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@12675 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
alex 2004-06-26 09:54:02 +00:00
parent 309e81bcee
commit e69fef945b
2 changed files with 32 additions and 1 deletions

24
configure vendored
View File

@ -156,6 +156,7 @@ Optional features:
--enable-termios use termios database for key codes [autodetect]
--disable-iconv do not use iconv(3) function [autodetect]
--disable-setlocale disable setlocale using in mplayer [autodetect]
--disable-langinfo do not use langinfo [autodetect]
--enable-lirc enable LIRC (remote control) support [autodetect]
--enable-lircc enable LIRCCD (LIRC client daemon) input [autodetect]
--enable-joystick enable joystick support [disable]
@ -1177,6 +1178,7 @@ _dvbhead=auto
_dxr2=auto
_dxr3=auto
_iconv=auto
_langinfo=auto
_rtc=auto
_ossaudio=auto
_arts=auto
@ -1336,6 +1338,8 @@ for ac_option do
--disable-dxr3) _dxr3=no ;;
--enable-iconv) _iconv=yes ;;
--disable-iconv) _iconv=no ;;
--enable-langinfo) _langinfo=yes ;;
--disable-langinfo) _langinfo=no ;;
--enable-rtc) _rtc=yes ;;
--disable-rtc) _rtc=no ;;
--enable-mp1e) _mp1e=yes ;;
@ -2035,6 +2039,23 @@ fi
echores "$_iconv"
echocheck "langinfo"
if test "$_langinfo" = auto ; then
cat > $TMPC <<EOF
#include <langinfo.h>
int main(void) { nl_langinfo(CODESET); return 0; }
EOF
_langinfo=no
cc_check && _langinfo=yes
fi
if test "$_langinfo" = yes ; then
_def_langinfo='#define USE_LANGINFO 1'
else
_def_langinfo='#undef USE_LANGINFO'
fi
echores "$_langinfo"
echocheck "language"
test -z "$_language" && _language=$LINGUAS
_language=`echo $_language | sed 's/,/ /g'`
@ -6353,6 +6374,9 @@ $_def_select
/* define this to use iconv(3) function to codepage conversions */
$_def_iconv
/* define this to use nl_langinfo function */
$_def_langinfo
/* define this to use RTC (/dev/rtc) for video timers (LINUX only) */
$_def_rtc

View File

@ -23,8 +23,11 @@
#endif
#ifdef USE_ICONV
#include <locale.h>
#include <iconv.h>
#ifdef USE_LANGINFO
#include <langinfo.h>
#endif
#include <locale.h>
#endif
#include "url.h"
@ -490,7 +493,11 @@ int asf_mmst_streaming_start(stream_t *stream)
/* prepare for the url encoding conversion */
#ifdef USE_ICONV
setlocale(LC_CTYPE, "");
#ifdef USE_LANGINFO
url_conv = iconv_open("UTF-16LE",nl_langinfo(CODESET));
#else
url_conv = iconv_open("UTF-16LE",setlocale(LC_CTYPE, NULL));
#endif
#endif
snprintf (str, 1023, "\034\003NSPlayer/7.0.0.1956; {33715801-BAB3-9D85-24E9-03B90328270A}; Host: %s", url1->hostname);