Commit Graph

13 Commits

Author SHA1 Message Date
TheAssassin
e91b459fce Use std::distance instead of pointer arithmetics 2020-08-08 11:54:58 +02:00
TheAssassin
3f86f178a5 Use classic C string handling
That way, we don't have to allocate memory, and it's also shorter.
2020-08-08 11:49:17 +02:00
TheAssassin
a8975e0e50 Clean up memory in case exec* fails
Prevents memory leaks.
2020-08-08 11:44:21 +02:00
TheAssassin
6c47939fdc Fix initialization bug 2020-08-08 11:34:02 +02:00
TheAssassin
484ff3f004 Fix C string processing bug
Well, makes sense now that I look at it... but caused a couple of hours worrying why my child processes were crashing until I noticed it'd only happen if I specified custom environment variables...
2020-08-08 00:30:28 +02:00
TheAssassin
8b604871cc Refactor duplicate code into static method 2020-08-08 00:30:28 +02:00
TheAssassin
88dd09f2d1 Set all variables to defaults in header 2020-08-08 00:30:28 +02:00
TheAssassin
5feef7880e Try to fix waitpid issues 2020-08-08 00:30:28 +02:00
TheAssassin
37aa37f5fe Fix behavior of close()
The implementation was obviously wrong/incomplete.
2020-08-07 21:22:58 +02:00
TheAssassin
c895a1dc59 Add kill and poll features for processes 2020-08-07 21:22:58 +02:00
TheAssassin
80a5667ca7 Check waitpid() for errors 2020-08-07 21:22:58 +02:00
TheAssassin
2425ccc832 Extract process handling into separate class
Needed for plugins' subprocess handling.
2020-08-07 21:22:58 +02:00
TheAssassin
e1f6da17b4 Add basic subprocess micro library
cpp-subprocess does not work when linked statically for some weird reason. Therefore, we're going to ship our own.
2020-08-07 21:22:58 +02:00