| Value | Meaning | 
|---|---|
| DEFAULT0 | no flags, default behaviour | 
| LEAVE_DESCRIPTORS_OPEN1 | the parent's open file descriptors will be inherited by the child; otherwise all descriptors except stdin, stdout and stderr will be closed before calling exec() in the child. | 
| DO_NOT_REAP_CHILD2 | the child will not be automatically reaped; you must use g_child_watch_add() yourself (or call waitpid() or handle SIGCHLD yourself), or the child will become a zombie. | 
| SEARCH_PATH4 | argv[0] need not be an absolute path, it will be looked for in the user's PATH. | 
| STDOUT_TO_DEV_NULL8 | the child's standard output will be discarded, instead of going to the same location as the parent's standard output. | 
| STDERR_TO_DEV_NULL16 | the child's standard error will be discarded. | 
| CHILD_INHERITS_STDIN32 | the child will inherit the parent's standard input (by default, the child's standard input is attached to /dev/null). | 
| FILE_AND_ARGV_ZERO64 | the first element of argv is the file to execute, while the remaining elements are the actual argument vector to pass to the file. Normally g_spawn_async_with_pipes() uses argv[0] as the file to execute, and passes all of argv to the child. | 
| SEARCH_PATH_FROM_ENVP128 | if argv[0] is not an abolute path, it will be looked for in the PATH from the passed child environment. Since: 2.34 | 
| CLOEXEC_PIPES256 | create all pipes with the O_CLOEXEC flag set. Since: 2.40 | 
Flags passed to g_spawn_sync(), g_spawn_async() and g_spawn_async_with_pipes().