fix: run PATH trailing-separator check instead of dead guard
The guard meant to warn when the `PATH` constant is set but does not end
in a directory separator used `strlen(PATH) < 0`, which is never true, so
the validation never ran and a misconfigured PATH was silently accepted.
Use `strlen(PATH) > 0` so the intended error_log message is emitted.
Fixes #1887