1
0
mirror of https://github.com/mpv-player/mpv synced 2024-12-26 00:42:57 +00:00
mpv/DOCS
wm4 5ebb498b7a scripting: make socket FD number for subprocesses dynamic
Before this, we pretty much guaranteed that --mpv-ipc-fd=3 would be
passed. The FD  was hardcoded, so scripts started by this mechanism
didn't need to actually parse the argument. Change this to using a
mostly random FD number instead.

I decided to do this because posix_spawnp() and the current replacement
cannot "guarantee" a FD layout. posix_spawn_file_actions_adddup2() just
runs dup2() calls, so it may be hard to set FD 3/4 if they are already
used by something else. For example imagine trying to map:

    {.fd = 3, .src_fd = 4},
    {.fd = 4, .src_fd = 3},

Then it'd do dup2(4, 3), dup2(3, 4) (reminder: dup2(src, dst)), and the
end result is that FD 4 really maps to the original FD 4.

While this was not a problem in the present code, it's too messy that I
don't want to pretend it can always done this way without an unholy
mess. So my assumption is that FDs 0-2 can be freely assigned because
they're never closed (probably...), while for all other FDs only
pass-through is reasonable.
2020-05-15 16:37:41 +02:00
..
man scripting: make socket FD number for subprocesses dynamic 2020-05-15 16:37:41 +02:00
client-api-changes.rst client API: report IDs of inserted playlist entries on loading playlist 2020-03-27 00:57:11 +01:00
compatibility.rst DOCS/compatibility.rst: add this file 2019-10-05 02:11:55 +02:00
compile-windows.md DOCS: mention that mpv doesn't build with MSVC 2019-12-14 16:05:54 +01:00
contribute.md DOCS/contribute.md: add some blabla about fixup commits in pull requests 2020-05-01 01:13:20 +02:00
edl-mpv.rst ytdl_hook, edl: add fps, samplerate codec parameters 2020-02-21 14:48:23 +01:00
encoding.rst DOCS/encoding.rst: remove deprecated usage of multiple items with *-add 2020-01-07 18:13:12 +01:00
interface-changes.rst vo_direct3d: rip out texture video rendering path 2020-05-13 22:19:00 +02:00
mplayer-changes.rst mac: remove Apple Remote support 2019-12-15 20:07:31 +01:00
release-policy.md DOCS/release-policy.md: clarify a few details 2019-10-27 14:06:16 +01:00
tech-overview.txt options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
waf-buildsystem.rst