[MPlayer-dev-eng] [PATCH] asf_mmst_streaming.c fails to compile on some systems
Steven M. Schultz
sms at 2BSD.COM
Thu Nov 6 23:18:47 CET 2003
Hi!
asf_mmst_streaming.c doesn't compile on some systems (which have
only the older setlocale rather than the newer nl_langinfo):
cc -c -O4 -march=i686 -mcpu=i686 -pipe -ffast-math -fomit-frame-pointer -D_THREAD_SAFE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I../loader -o asf_mmst_streaming.o asf_mmst_streaming.c
asf_mmst_streaming.c:27: langinfo.h: No such file or directory
asf_mmst_streaming.c: In function `string_utf16_open':
asf_mmst_streaming.c:117: `CODESET' undeclared (first use in this function)
asf_mmst_streaming.c:117: (Each undeclared identifier is reported only once
asf_mmst_streaming.c:117: for each function it appears in.)
asf_mmst_streaming.c:117: warning: passing arg 2 of `libiconv_open' makes pointer from integer without a cast
asf_mmst_streaming.c: In function `string_utf16':
asf_mmst_streaming.c:133: warning: passing arg 2 of `libiconv' from incompatible pointer type
gmake: *** [asf_mmst_streaming.o] Error 1
The fix is trivial and will work everywhere that has setlocale().
setlocale(LC_CTYPE, NULL) is equivalent to nl_langinfo(CODESET) - I've
tested the patch on a system which has nl_langinfo.
Cheers,
Steven Schultz
-------------- next part --------------
--- asf_mmst_streaming.c.dist Sun Nov 2 20:20:23 2003
+++ asf_mmst_streaming.c Sun Nov 2 22:08:45 2003
@@ -24,7 +24,6 @@
#ifdef USE_ICONV
#include <locale.h>
-#include <langinfo.h>
#include <iconv.h>
#endif
@@ -114,7 +113,7 @@
static void string_utf16_open() {
setlocale(LC_CTYPE, "");
- url_conv = iconv_open("UTF-16LE",nl_langinfo(CODESET));
+ url_conv = iconv_open("UTF-16LE", setlocale(LC_CTYPE, NULL));
}
static void string_utf16_close() {
More information about the MPlayer-dev-eng
mailing list