envp in spawn() functions is the whole environment table for the child process. Including PATH. Thus, unless PATH is explicitly put into that table, the process will be spawned without PATH. Since on Windows binaries are found via PATH instead of LD_LIBRARY_PATH or whatever, almost no program (unless installed in WINDIR, maybe) can run without a PATH. Certainly not test programs - meson adds bld subdirs to the PATH to make sure that test programs use uninstalled glib at runtime. So make sure that PATH is passed along.
(cherry picked from commit 340dad2a8505f24c9c61837b74b2a84b28eb51b7)