diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2012-06-01 19:52:35 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-06-01 19:59:39 +0200 |
commit | fbc5e0fae12a72b547e6d841e80116ce5c26fbf0 (patch) | |
tree | d3cec49752d4d014852a2d7afefa02cf1b1f35e5 /libavformat/avisynth.c | |
parent | 0d83edaba9f4b298fa8a645a032bc84e0c03ef1b (diff) | |
parent | dbaf79c9d7270eafd2479d9c650efa1433d65efd (diff) | |
download | ffmpeg-fbc5e0fae12a72b547e6d841e80116ce5c26fbf0.tar.gz |
Merge remote-tracking branch 'qatar/master'
* qatar/master:
http: Add the url_shutdown function for https, too
http: Simplify code by removing a local variable
http: Clear the old URLContext pointer when closed
tcp: Try enabling SO_REUSEADDR when listening
tcp: Check the return values from bind and accept
avisynth: Make sure the filename passed to avisynth is in the right code page
Conflicts:
libavformat/http.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/avisynth.c')
-rw-r--r-- | libavformat/avisynth.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libavformat/avisynth.c b/libavformat/avisynth.c index 13b5f4309c..4a00787a9c 100644 --- a/libavformat/avisynth.c +++ b/libavformat/avisynth.c @@ -49,10 +49,15 @@ static int avisynth_read_header(AVFormatContext *s) DWORD id; AVStream *st; AVISynthStream *stream; + wchar_t filename_wchar[1024] = { 0 }; + char filename_char[1024] = { 0 }; AVIFileInit(); - res = AVIFileOpen(&avs->file, s->filename, OF_READ|OF_SHARE_DENY_WRITE, NULL); + /* avisynth can't accept UTF-8 filename */ + MultiByteToWideChar(CP_UTF8, 0, s->filename, -1, filename_wchar, 1024); + WideCharToMultiByte(CP_THREAD_ACP, 0, filename_wchar, -1, filename_char, 1024, NULL, NULL); + res = AVIFileOpen(&avs->file, filename_char, OF_READ|OF_SHARE_DENY_WRITE, NULL); if (res != S_OK) { av_log(s, AV_LOG_ERROR, "AVIFileOpen failed with error %ld", res); |