1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-30 19:22:11 +00:00
mpv/osdep
James Ross-Gowan 83fec9bafb subprocess-win: update to mp_subprocess2
This fixes the "run" and "subprocess" commands on Windows, including
youtube-dl support.

Unix-like FD inheritance is emulated on Windows by using an undocumented
data structure[1] that gets passed to the newly created process in
STARTUPINFO.lpReserved2. It consists of two sparse arrays listing the
HANDLE and internal CRT flags corresponding to each FD. This structure
is used and understood primarily by MSVCRT, but there are other runtimes
and frameworks that can write it, like libuv.

The code for creating asynchronous "anonymous" pipes in Windows has been
enhanced and moved into windows_utils.c. This is mainly an artifact of
an unfinished future change to support anonymous IPC clients in Windows.
Right now, it's still only used in subprocess-win.c

[1]: https://www.catch22.net/tuts/undocumented-createprocess
2020-07-20 21:02:17 +02:00
..
android osdep: remove posix_spawn() helpers and wrappers 2020-05-15 16:37:41 +02:00
macos options: introduce bool option type, use it for --fullscreen 2020-03-14 02:23:38 +01:00
win32 win32: pthread: define PTHREAD_MUTEX_ERRORCHECK 2020-03-19 00:11:23 +01:00
atomic.h atomic: add atomic_exchange_explicit() fallback 2020-03-05 22:00:50 +01:00
compiler.h osdep: add portable C11-like alignof() macro 2018-05-24 19:56:35 +02:00
endian.h
getpid.h lua+js: Implement utils.getpid() 2018-02-13 20:16:01 -08:00
glob-win.c Universal Windows Plaform (UWP) support 2017-06-29 10:36:16 +02:00
io.c io: remove Windows tmpfile() emulation 2019-09-19 20:37:05 +02:00
io.h player: Optionally validate st_mtime when restoring playback state 2019-11-20 15:11:33 +01:00
macOS_swift_bridge.h mac: replace old event tap for media key support with MediaPlayer 2019-12-15 20:07:31 +01:00
macosx_application_objc.h mac: fix media key support for libmpv users 2020-02-22 13:56:31 +01:00
macosx_application.h cocoa-cb: add support for forcing the dedicated GPU for rendering 2020-01-26 12:12:22 +01:00
macosx_application.m build: change filenames of generated files 2020-06-04 16:59:05 +02:00
macosx_compat.h mac: add missing semicolon to macosx_compat.h 2019-01-26 20:44:36 +01:00
macosx_events_objc.h mac: fix media key support for libmpv users 2020-02-22 13:56:31 +01:00
macosx_events.h mac: remove Apple Remote support 2019-12-15 20:07:31 +01:00
macosx_events.m mac: fix media key support for libmpv users 2020-02-22 13:56:31 +01:00
macosx_menubar_objc.h osx: refactor menu bar creation 2017-08-18 19:20:41 +02:00
macosx_menubar.h osx: move menu bar creation into its own file 2017-08-18 19:20:41 +02:00
macosx_menubar.m mac: activate logging when started from the bundle 2020-02-08 10:55:07 +01:00
macosx_touchbar.h osx: change license of OSX and cocoa files to LGPL 2017-06-24 16:29:22 +02:00
macosx_touchbar.m osx: change license of OSX and cocoa files to LGPL 2017-06-24 16:29:22 +02:00
macosx_versions.h osx: change license of OSX and cocoa files to LGPL 2017-06-24 16:29:22 +02:00
main-fn-cocoa.c
main-fn-unix.c
main-fn-win.c win32: remove -municode from mpv binary 2019-09-19 20:37:05 +02:00
main-fn.h
mpv.exe.manifest w32_common: Support HiDPI on Windows 2020-05-08 21:46:45 +10:00
mpv.rc build: change filenames of generated files 2020-06-04 16:59:05 +02:00
path-macosx.m osx: fix bundle on macOS High Sierra (10.13) 2017-10-03 11:30:56 +02:00
path-unix.c path: switch back to using non-XDG config dir by default 2020-06-25 17:56:16 +02:00
path-uwp.c Universal Windows Plaform (UWP) support 2017-06-29 10:36:16 +02:00
path-win.c path: do not use old_home for win32 exe dir 2020-06-25 17:56:16 +02:00
path.h Universal Windows Plaform (UWP) support 2017-06-29 10:36:16 +02:00
polldev.c osdep: add poll shim for macOS 2017-12-09 21:11:46 +02:00
polldev.h osdep: add poll shim for macOS 2017-12-09 21:11:46 +02:00
semaphore_osx.c Fix use of ISC license 2017-04-15 16:20:00 +02:00
semaphore.h
strnlen.h osdep: make use of HAVE_ANDROID 2018-08-20 17:16:22 +02:00
subprocess-dummy.c command: extend subprocess command 2020-07-20 21:02:17 +02:00
subprocess-posix.c osdep: remove confstr() fallback for subprocess spawning 2020-05-25 00:30:35 +03:00
subprocess-win.c subprocess-win: update to mp_subprocess2 2020-07-20 21:02:17 +02:00
subprocess.c command: extend subprocess command 2020-07-20 21:02:17 +02:00
subprocess.h command: extend subprocess command 2020-07-20 21:02:17 +02:00
terminal-dummy.c build: change how some OS specific source files are selected 2017-06-29 10:30:16 +02:00
terminal-unix.c terminal-unix: add key_entry defs for DECCKM mode 2020-04-15 16:46:25 +02:00
terminal-win.c subprocess-win: update to mp_subprocess2 2020-07-20 21:02:17 +02:00
terminal.h terminal: remove unused return value 2017-06-27 18:08:56 +02:00
threads.c build: restore BSD thread names after 9f461b85bf 2020-04-23 13:58:16 +02:00
threads.h osdep: add a pthread debugging wrapper 2020-03-18 22:42:13 +01:00
timer-darwin.c
timer-linux.c build: remove nanosleep() check 2017-12-02 23:29:40 +01:00
timer-win2.c Universal Windows Plaform (UWP) support 2017-06-29 10:36:16 +02:00
timer.c timer: remove an unused helper function 2018-05-24 19:56:35 +02:00
timer.h demux, stream: readd cache-speed in some other form 2018-12-06 10:30:41 +01:00
w32_keyboard.c w32_common: handle media keys 2017-08-05 02:38:44 +10:00
w32_keyboard.h w32_common: handle media keys 2017-08-05 02:38:44 +10:00
win32-console-wrapper.c win32-console-wrapper: silence missing prototype warnings 2019-05-10 21:06:58 +10:00
windows_utils.c subprocess-win: update to mp_subprocess2 2020-07-20 21:02:17 +02:00
windows_utils.h subprocess-win: update to mp_subprocess2 2020-07-20 21:02:17 +02:00