#include #include #include #include #include #include "fdop.h" int posix_spawn_file_actions_addchdir_np(posix_spawn_file_actions_t *restrict fa, const char *restrict path) { size_t len = strlen(path); if (faexpand(fa, len + 1) != 0) return ENOMEM; fa->__pad[fa->__pad0[0]++] = INT_MAX; fa->__pad[fa->__pad0[0]++] = -FDOP_CHDIR; memcpy((posix_spawn_file_actions_t *)fa->__actions + 1, path, len + 1); return 0; }