1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-25 08:12:17 +00:00
mpv/stream
wm4 a1244111a7 windows support: unicode filenames
Windows uses a legacy codepage for char* / runtime functions accepting
char *. Using UTF-8 as the codepage with setlocale() is explicitly
forbidden.

Work this around by overriding the MSVCRT functions with wrapper
macros, that assume UTF-8 and use "proper" API calls like _wopen etc.
to deal with unicode filenames. All code that uses standard functions
that take or return filenames must now include osdep/io.h. stat()
can't be overridden, because MinGW-w64 itself defines "stat" as a
macro. Change code to use use mp_stat() instead.

This is not perfectly clean, but still somewhat sane, and much better
than littering the rest of the mplayer code with MinGW specific hacks.
It's also a bit fragile, but that's actually little different from the
previous situation. Also, MinGW is unlikely to ever include a nice way
of dealing with this.
2012-03-09 20:48:54 +02:00
..
freesdp cleanup: shut up more warnings 2011-05-06 18:33:16 +03:00
librtsp cleanup: remove NULL checks before free() all over the code 2010-11-14 13:11:20 +02:00
realrtsp build: switch to libavutil bswap.h and intreadwrite.h 2012-02-01 22:46:27 +02:00
ai_alsa1x.c cleanup: remove more warnings 2011-05-02 00:46:48 +03:00
ai_oss.c
asf_mmst_streaming.c cleanup: shut up more warnings 2011-05-06 18:33:16 +03:00
asf_mmst_streaming.h
asf_streaming.c build: switch to libavutil bswap.h and intreadwrite.h 2012-02-01 22:46:27 +02:00
audio_in.c cleanup: don't check for NULL before free() 2010-11-08 18:05:12 +02:00
audio_in.h
cache2.c cleanup: Silence compilation warnings on MinGW-w64 2012-03-01 00:22:30 +02:00
cache2.h terminal output: show cache fill changes in "PAUSED" message 2011-02-15 18:35:34 +02:00
cdd.h
cdinfo.c cleanup: don't check for NULL before free() 2010-11-08 18:05:12 +02:00
cookies.c windows support: unicode filenames 2012-03-09 20:48:54 +02:00
cookies.h
dvb_tune.c cleanup: shut up more warnings 2011-05-06 18:33:16 +03:00
dvb_tune.h
dvbin.h
frequencies.c
frequencies.h
http.c configure, build: require at least Libav 0.7 2011-12-22 01:27:45 +02:00
http.h stream/: delete base64_encode(), use libavutil av_base64_encode() 2010-12-16 05:16:50 +02:00
network.c configure, build: remove --disable-libav support 2011-12-11 07:48:26 +02:00
network.h stream: http: Allow setting custom http header 2011-04-13 03:17:05 +03:00
open.c
pnm.c build: switch to libavutil bswap.h and intreadwrite.h 2012-02-01 22:46:27 +02:00
pnm.h
pvr.h
rtp.c
rtp.h
stream_bluray.c stream_bluray: switch to new libbluray API 2011-07-10 11:30:06 +03:00
stream_cdda.c stream_cdda: fix incorrectly allocated option field 2011-07-30 04:03:47 +03:00
stream_cddb.c windows support: unicode filenames 2012-03-09 20:48:54 +02:00
stream_cue.c stream_cue: Avoid probing empty filename in cue_find_bin() 2011-07-06 08:56:37 +03:00
stream_dvb.c cleanup: don't check for NULL before free() 2010-11-08 18:05:12 +02:00
stream_dvd_common.c build: switch to libavutil bswap.h and intreadwrite.h 2012-02-01 22:46:27 +02:00
stream_dvd_common.h
stream_dvd.c stream_dvd: fix dvd_get_current_time() 2011-07-06 13:01:07 +03:00
stream_dvd.h options: change -alang and -slang to use string list type 2011-04-20 04:22:42 +03:00
stream_dvdnav.c cosmetics: stream_dvdnav.c: Remove pointless () 2011-07-06 13:01:07 +03:00
stream_dvdnav.h options: change -alang and -slang to use string list type 2011-04-20 04:22:42 +03:00
stream_ffmpeg.c Update Libav API uses 2012-02-01 22:46:27 +02:00
stream_file.c windows support: unicode filenames 2012-03-09 20:48:54 +02:00
stream_ftp.c cleanup: don't check for NULL before free() 2010-11-08 18:05:12 +02:00
stream_live555.c
stream_mf.c
stream_nemesi.c
stream_netstream.c cleanup: don't check for NULL before free() 2010-11-08 18:05:12 +02:00
stream_netstream.h
stream_null.c
stream_pvr.c stream_pvr: Replace <sys/fcntl.h> include by <fcntl.h> 2011-07-06 09:55:33 +03:00
stream_radio.c cleanup: don't check for NULL before free() 2010-11-08 18:05:12 +02:00
stream_radio.h
stream_rtp.c
stream_rtsp.c
stream_smb.c Merge branch 'mplayer1_changes' 2011-05-02 00:46:03 +03:00
stream_tv.c
stream_udp.c
stream_vcd.c stream_vcd: fix option value allocated with strdup 2012-01-16 22:40:14 +02:00
stream_vstream.c
stream.c build: switch to libavutil bswap.h and intreadwrite.h 2012-02-01 22:46:27 +02:00
stream.h stream: show negative seek position value in error message 2011-07-06 09:30:04 +03:00
tcp.c
tcp.h
tv.c cleanup: shut up more warnings 2011-05-06 18:33:16 +03:00
tv.h stream/tv: move new_handle() function from header to tv.c 2010-11-02 04:16:55 +02:00
tvi_bsdbt848.c stream/tv: move new_handle() function from header to tv.c 2010-11-02 04:16:55 +02:00
tvi_def.h stream/tv: move new_handle() function from header to tv.c 2010-11-02 04:16:55 +02:00
tvi_dshow.c cleanup: tvi_dshow: add "static", fix printf format 2011-07-06 13:01:07 +03:00
tvi_dshow.h
tvi_dummy.c stream/tv: move new_handle() function from header to tv.c 2010-11-02 04:16:55 +02:00
tvi_v4l2.c stream/tvi_v4l[2]: fix calculation of free RAM for buffers 2011-07-06 13:01:08 +03:00
tvi_v4l.c stream/tvi_v4l[2]: fix calculation of free RAM for buffers 2011-07-06 13:01:08 +03:00
udp.c
udp.h
url.c stream/url.c: escape characters >= 127 in URLs 2011-02-15 18:47:55 +02:00
url.h stream/http: Add support for login/password in http_proxy env variable 2010-12-16 05:19:17 +02:00
vcd_read_darwin.h cleanup: Make vcd_seek_to_track() static in more files 2011-06-29 09:26:00 +03:00
vcd_read_fbsd.h build: switch to libavutil bswap.h and intreadwrite.h 2012-02-01 22:46:27 +02:00
vcd_read_os2.h cleanup: Make vcd_seek_to_track() static in more files 2011-06-29 09:26:00 +03:00
vcd_read_win32.h cleanup: Make vcd_seek_to_track() static in more files 2011-06-29 09:26:00 +03:00
vcd_read.h build: switch to libavutil bswap.h and intreadwrite.h 2012-02-01 22:46:27 +02:00