summaryrefslogtreecommitdiff
path: root/EmbeddedPkg/Library/EfiFileLib
diff options
context:
space:
mode:
authorandrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524>2010-05-07 16:45:48 +0000
committerandrewfish <andrewfish@6f19259b-4bc3-4df7-8a09-765794883524>2010-05-07 16:45:48 +0000
commit208a8330d0029d4025f6f27f182d627bd9d7b38b (patch)
tree717006429da60ba911584996afe266f0f7353a2f /EmbeddedPkg/Library/EfiFileLib
parent0caa7ad507205968dfada67d0c368e62209d03ee (diff)
downloadedk2-platforms-208a8330d0029d4025f6f27f182d627bd9d7b38b.tar.xz
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
Diffstat (limited to 'EmbeddedPkg/Library/EfiFileLib')
-rw-r--r--EmbeddedPkg/Library/EfiFileLib/EfiFileLib.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/EmbeddedPkg/Library/EfiFileLib/EfiFileLib.c b/EmbeddedPkg/Library/EfiFileLib/EfiFileLib.c
index 1db7d7d035..c93304d537 100644
--- a/EmbeddedPkg/Library/EfiFileLib/EfiFileLib.c
+++ b/EmbeddedPkg/Library/EfiFileLib/EfiFileLib.c
@@ -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);