mirror of https://github.com/mpv-player/mpv
257a2b9646
Directory-opening never worked on Windows because MSVCRT's open() doesn't open directories and its fstat() doesn't recognise directory handles. These are just MSVCRT restrictions, and the Windows API itself has no problem with opening directories as file objects, so reimplement mpv's mp_open and mp_stat to use the Windows API directly. This should fix directory playback. This also populates the st_dev and st_ino fields of struct stat, so filesystem loop checking in demux_playlist.c should now work on Windows. Fixes #4711 |
||
---|---|---|
.. | ||
android | ||
ar | ||
win32 | ||
atomic.h | ||
compiler.h | ||
endian.h | ||
glob-win.c | ||
io.c | ||
io.h | ||
macosx_application.h | ||
macosx_application.m | ||
macosx_application_objc.h | ||
macosx_compat.h | ||
macosx_events.h | ||
macosx_events.m | ||
macosx_events_objc.h | ||
macosx_menubar.h | ||
macosx_menubar.m | ||
macosx_menubar_objc.h | ||
macosx_touchbar.h | ||
macosx_touchbar.m | ||
macosx_versions.h | ||
main-fn-cocoa.c | ||
main-fn-unix.c | ||
main-fn-win.c | ||
main-fn.h | ||
mpv.exe.manifest | ||
mpv.rc | ||
path-macosx.m | ||
path-unix.c | ||
path-uwp.c | ||
path-win.c | ||
path.h | ||
posix-spawn.h | ||
semaphore.h | ||
semaphore_osx.c | ||
strnlen.h | ||
subprocess-dummy.c | ||
subprocess-posix.c | ||
subprocess-win.c | ||
subprocess.c | ||
subprocess.h | ||
terminal-dummy.c | ||
terminal-unix.c | ||
terminal-win.c | ||
terminal.h | ||
threads.c | ||
threads.h | ||
timer-darwin.c | ||
timer-linux.c | ||
timer-win2.c | ||
timer.c | ||
timer.h | ||
w32_keyboard.c | ||
w32_keyboard.h | ||
win32-console-wrapper.c | ||
windows_utils.c | ||
windows_utils.h |