>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