Commit Graph

59 Commits (43a04227864a4022a1013cfd81fde0cf4a4748cc)

Author SHA1 Message Date
Daniel Kolesa 07ea93ba68 potentially reduce more copies in win32 process code 2017-05-13 19:52:19 +02:00
Daniel Kolesa 45c8450209 envvar support in subprocess 2017-05-13 18:36:40 +02:00
Daniel Kolesa 2fc506d1bb fewer temporary allocations in subprocess 2017-05-13 17:02:39 +02:00
Daniel Kolesa 628cede1eb minor cleanup 2017-05-13 00:53:51 +02:00
Daniel Kolesa b5624dc6b9 terminate child processes on parent process exit on windows 2017-05-13 00:43:32 +02:00
Daniel Kolesa 06687881c1 implement subprocess detach and validity checks 2017-05-13 00:00:44 +02:00
Daniel Kolesa 5bbee30f6c simplify windows process code 2017-05-12 23:47:25 +02:00
Daniel Kolesa 884e8c2849 support for non-posix non-windows platforms in io (useful at all? dunno) 2017-05-12 00:08:37 +02:00
Daniel Kolesa 0925ff3350 clean up platform checks 2017-05-12 00:05:18 +02:00
Daniel Kolesa 005485f6a6 rename to subprocess_stream/error 2017-05-11 23:57:04 +02:00
Daniel Kolesa 10caf39244 split win32 and posix code of context_stack and process into separate files 2017-05-10 00:30:23 +02:00
Daniel Kolesa 2bab256b4d more windows fixes 2017-05-09 22:37:00 +02:00
Daniel Kolesa 5f12c8f0b9 use_path fix 2017-05-09 22:21:58 +02:00
Daniel Kolesa 60ebc1d5b8 do not attempt parsing if string is empty 2017-05-09 22:09:20 +02:00
Daniel Kolesa 5c6aab9290 properly handle null termination in unicode conversions 2017-05-09 21:47:33 +02:00
Daniel Kolesa 9d4a8cfa83 windows fixes 2017-05-09 21:20:37 +02:00
Daniel Kolesa 9c876166b2 cleanup 2017-05-09 20:40:52 +02:00
Daniel Kolesa af951a243c use strings for subprocess errors 2017-05-09 20:33:45 +02:00
Daniel Kolesa d5fe5dc292 use GetEnvironmentVariableW 2017-05-09 19:03:54 +02:00
Daniel Kolesa 4f9007ac57 untested windows code for subprocess handling 2017-05-09 18:59:56 +02:00
Daniel Kolesa 29ba5f22d3 cleanup 2017-05-08 20:40:18 +02:00
Daniel Kolesa 045a280c56 only initialize the data late 2017-05-08 20:38:46 +02:00
Daniel Kolesa 5d16d8fd87 move_data/swap_data is platform independent 2017-05-08 20:36:59 +02:00
Daniel Kolesa ea7f4062b7 hide platform-specific data from subprocess 2017-05-08 20:32:36 +02:00
Daniel Kolesa 31c3602839 fdopen fix 2017-05-08 20:00:51 +02:00
Daniel Kolesa 8319674705 file descriptor close fix 2017-05-08 19:56:29 +02:00
Daniel Kolesa 4966830d33 rename process_info to subprocess 2017-05-08 18:42:30 +02:00
Daniel Kolesa 4022897195 make sure process exec never leaks file descriptors 2017-05-08 17:10:09 +02:00
Daniel Kolesa 6079676ac9 handle failed fdopen 2017-05-08 04:16:47 +02:00
Daniel Kolesa ce1b94624a rename process_pipe 2017-05-08 04:13:07 +02:00
Daniel Kolesa 1ecf921f1a initial impl of process calling api (posix only atm) 2017-05-08 03:51:45 +02:00
Daniel Kolesa 44d370183c custom close func support for filestreams 2017-05-08 01:07:32 +02:00
Daniel Kolesa de7225c8f6 incorporate process.cc into build 2017-05-07 22:48:02 +02:00
Daniel Kolesa f01992c952 add command line splitting api (posix, windows) and use it from build 2017-05-07 21:17:13 +02:00
Daniel Kolesa 94814dc61e remove internal/win32.hh and put environ stuff into a source file 2017-05-02 00:15:01 +02:00
Daniel Kolesa 1525edf3d7 type/include cleanup 2017-04-09 16:44:45 +02:00
Daniel Kolesa 62676f4222 rename octastd to libostd 2017-04-06 20:14:52 +02:00
Daniel Kolesa 9f35909660 fixes in streams 2017-04-04 01:06:55 +02:00
Daniel Kolesa c96d64e5ba remove the scheduler iface nonsense (just make a virtual base) 2017-03-24 15:18:41 +01:00
Daniel Kolesa 023af03361 spawn/make_channel/yield without explicitly specifying scheduler 2017-03-23 11:35:23 +01:00
Daniel Kolesa 18cfe5119f track current task for coroutine scheduler separately 2017-03-22 18:23:29 +01:00
Daniel Kolesa 2537d955d1 fixes, bigger stack for main task, take spawn funcs by value 2017-03-22 17:32:58 +01:00
Daniel Kolesa 0d815e3610 default 64 KiB stack on all systems 2017-03-20 00:51:16 +01:00
Daniel Kolesa 0da22e777d add a way to retrieve the current coroutine context 2017-03-17 03:04:15 +01:00
Daniel Kolesa b86df5c016 move over to standard filesystem module (from std::experimental or std) 2017-03-10 18:31:34 +01:00
Daniel Kolesa 82233ec61e more windows fixes 2017-03-10 04:11:36 +01:00
Daniel Kolesa 52da0ab7ae windows fixes 2017-03-10 03:05:05 +01:00
Daniel Kolesa afd086b2a0 move some more bits into impl files 2017-03-09 19:21:01 +01:00
Daniel Kolesa 5fafcdf954 move the stack alloc impl bits into a source file 2017-03-09 01:00:47 +01:00
Daniel Kolesa ce2a8ed758 initial import of context switching assembly from boost.context 2017-03-05 15:30:41 +01:00