>From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of Laszlo 
>Ersek

I'll attempt answer some of your questions, but Jaben may have to
answer some of them (like his commit speed :-) or questions about what
the shell spec allows).

>
>So my first question would have been, what if the shell is memory mapped
>(from a firmware volume), but the platform doesn't expose firmware
>filesystems (FFSs) as EFI simple file system protocol instances? In that
>case, the "file system on which the executing shell is located" seems
>ill-defined.

In such a case homefilesystem will not get defined, I think.

>>>> execute %homefilesystem% to set the cwd to the root of the file system
>>>> where the shell is located.
>
>I think the commit message here misses a "CD" command.

The shell does not handle "cd fsN:".  But "fsN:" does work.  I suppose
one could always add a "cd \" after "%hoemfilesystem%", but I think it
will not have any effect in most (all?) cases where homefilesystem is
defined.

>>>> +    InternalEfiShellSetEnv(L"homefilesystem", StartupScriptPath, TRUE);
>>>> +
>
>Again, this refers to the startup script, not the shell itself.

The variable's name implies the startup script, but at the point it is
used, it contains only the file system where the shell itself was found.
Code following this continues to modify the variable's value until it
eventually does point to where the startup script *might* be.

>Thanks
>Laszlo
>

Regards,
Jim
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to