Previously the code failed in that it would return top-level plus a sub, i.e. ["", "foo"], and it would consider "usr/lib" a prefix of "usr/libexec" which it is not.