Fix svn check in bug that broke CWD. Update the connect disconnect support in device command to minimize operations.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10462 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@ -409,6 +409,7 @@ EblFileDevicePath (
|
||||
Status = gBS->HandleProtocol (File->EfiHandle, &gEfiBlockIoProtocolGuid, (VOID **)&BlkIo);
|
||||
if (!EFI_ERROR (Status)) {
|
||||
File->FsBlockIoMedia = BlkIo->Media;
|
||||
File->FsBlockIo = BlkIo;
|
||||
|
||||
// If we are not opening the device this will get over written with file info
|
||||
File->MaxPosition = MultU64x32 (BlkIo->Media->LastBlock + 1, BlkIo->Media->BlockSize);
|
||||
@ -1732,6 +1733,15 @@ EfiSetCwd (
|
||||
return EFI_INVALID_PARAMETER;
|
||||
}
|
||||
|
||||
AsciiStrCpy (gCwd, File->DeviceName);
|
||||
if (File->FileName == NULL) {
|
||||
AsciiStrCat (gCwd, ":\\");
|
||||
} else {
|
||||
AsciiStrCat (gCwd, ":");
|
||||
AsciiStrCat (gCwd, File->FileName);
|
||||
}
|
||||
|
||||
|
||||
EfiClose (File);
|
||||
if (Path != Cwd) {
|
||||
FreePool (Path);
|
||||
|
Reference in New Issue
Block a user