[Issue 13753] src/std/process.d: _spawnvp error handling is broken

d-bugmail at puremagic.com d-bugmail at puremagic.com
Tue Dec 10 10:27:22 UTC 2019


https://issues.dlang.org/show_bug.cgi?id=13753

berni44 <bugzilla at d-ecke.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bugzilla at d-ecke.de

--- Comment #5 from berni44 <bugzilla at d-ecke.de> ---
spawnvp seems only to exist for windows now. But I did not check if this has
been the case in 2014 too.

Tried to adapt the test for "browse":

```
import std.process;
import core.thread;

int main() {
        auto pidBefore = getpid();
        try {
                browse("DOESNOTEXIST");
                assert(false);
        } catch(Exception e) {
                auto pidAfterwards = getpid();
                assert(pidBefore == pidAfterwards); // make sure we are still
in the same process
        }
        return 0;
}
```

This produces an Assertion failure (POSIX). And the process seems still to be
running after the main process has stopped.

--


More information about the Digitalmars-d-bugs mailing list