Env var replacement for empty strings

When the value of an env var is an empty string, the ternary operator here will consider the empty string a falsy value, resulting in the variable not being replaced.

If we specifically test for undefined (like here), the empty string will be preserved and only missing env variables would be discarded.

Is it OK for a PR?

That would be a breaking change as there will be flows that rely on leaving an env var 'blank' in order to fall back to the parent value.

That's right. Would there be a workaround in order to work with empty strings?