[lldb-dev] Should FileSpec::Resolve() look at PATH?
Greg Clayton
gclayton at apple.com
Tue Oct 14 17:38:13 PDT 2014
> On Oct 14, 2014, at 4:36 PM, Zachary Turner <zturner at google.com> wrote:
>
> I have an issue on Windows when trying to run shell commands. We specify the shell as "cmd.exe", create a FileSpec out of this, and call FileSpec::Resolve. This ends up making an absolute path out of cmd.exe, but it does so by just sticking the working directory onto the front of it, which is obviously wrong.
>
> My question is: For FileSpecs that are only filenames, nothing else, should we attempt to locate a matching file in PATH, and when we find one use the resulting absolute path?
Not by default. We should have a method on FileSpec that might say "ResolveExecutableUsingPath()", but I wouldn't do it by default for every file spec. Not every file is an executable, so we shouldn't treat all files as executables by default unless a method is explicitly called on that.
As a side questions, we provide a complete path to "/bin/sh" as the shell for unix, shouldn't we specify a full path to "cmd.exe" as well? Does it live in a known location on windows?
Greg
More information about the lldb-dev
mailing list