mirror of https://github.com/acidanthera/audk.git
ShellPkg/Shell: Update CRC32 in the EFI System Table header
Update CRC32 in the EFI System Table header after shell changes the value of gST->ConsoleOutHandle and gST->ConOut Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Cinnamon Shia <cinnamon.shia@hpe.com> Reviewed-By: Tapan Shah <tapandshah@hpe.com> Reviewed-By: Jaben Carsey <Jaben.carsey@intel.com>
This commit is contained in:
parent
ed72804638
commit
8550b5f081
|
@ -3,6 +3,7 @@
|
|||
|
||||
(C) Copyright 2013 Hewlett-Packard Development Company, L.P.<BR>
|
||||
Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR>
|
||||
(C) Copyright 2016 Hewlett-Packard Development Company, L.P.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
|
@ -91,6 +92,15 @@ ConsoleLoggerInstall(
|
|||
gST->ConsoleOutHandle = gImageHandle;
|
||||
gST->ConOut = &(*ConsoleInfo)->OurConOut;
|
||||
|
||||
//
|
||||
// Update the CRC32 in the EFI System Table header
|
||||
//
|
||||
gST->Hdr.CRC32 = 0;
|
||||
gBS->CalculateCrc32 (
|
||||
(UINT8 *)&gST->Hdr,
|
||||
gST->Hdr.HeaderSize,
|
||||
&gST->Hdr.CRC32
|
||||
);
|
||||
return (Status);
|
||||
}
|
||||
|
||||
|
@ -126,6 +136,16 @@ ConsoleLoggerUninstall(
|
|||
gST->ConsoleOutHandle = ConsoleInfo->OldConHandle;
|
||||
gST->ConOut = ConsoleInfo->OldConOut;
|
||||
|
||||
//
|
||||
// Update the CRC32 in the EFI System Table header
|
||||
//
|
||||
gST->Hdr.CRC32 = 0;
|
||||
gBS->CalculateCrc32 (
|
||||
(UINT8 *)&gST->Hdr,
|
||||
gST->Hdr.HeaderSize,
|
||||
&gST->Hdr.CRC32
|
||||
);
|
||||
|
||||
return (gBS->UninstallProtocolInterface(gImageHandle, &gEfiSimpleTextOutProtocolGuid, (VOID*)&ConsoleInfo->OurConOut));
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue