https://issues.dlang.org/show_bug.cgi?id=15915
--- Comment #1 from Atila Neves <atila.ne...@gmail.com> --- It works if a file named foo/app is executed like so: import std.process; execute(["foo/app", ...]; But not if like this: execute(["./app", ...], env, config, maxOutput, "foo"); spawnProcessImpl throws an exception ("Not an executable file") saying the file isn't executable because it's looking for the wrong file; it doesn't take workDir into account. --