diff options
author | Dandan Bi <dandan.bi@intel.com> | 2019-04-23 14:23:15 +0800 |
---|---|---|
committer | Liming Gao <liming.gao@intel.com> | 2019-04-28 09:32:42 +0800 |
commit | 5a4f3a3453e7689256058eada880791c3d8171f5 (patch) | |
tree | 5fcc90b3308aa6257d6a0a35407c08517e753bed /MdeModulePkg/Library/FileExplorerLib | |
parent | 00d2aef80c9ac866681a737ee0af60e9edccba11 (diff) | |
download | edk2-5a4f3a3453e7689256058eada880791c3d8171f5.tar.gz |
MdeModulePkg/FileExplorer: Set Handle to NULL after uninstall protocol
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1728
Currently Emulator meets ASSERT when enter setup->Continue->enter setup.
When re-enter setup, the FeDriverHandle in FileExplorerLib Constructor
is not NULL which cause InstallMultipleProtocolInterfaces failure,
then ASSERT. So here set FeDriverHandle to NULL after uninstalling
protocols on it in the Destructor function to avoid this issue.
Cc: Liming Gao <liming.gao@intel.com>
Cc: Eric Dong <eric.dong@intel.com>
Cc: Hao Wu <hao.a.wu@intel.com>
Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
Reviewed-by: Eric Dong <eric.dong@intel.com>
Diffstat (limited to 'MdeModulePkg/Library/FileExplorerLib')
-rw-r--r-- | MdeModulePkg/Library/FileExplorerLib/FileExplorer.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c b/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c index 27f12fcbf9..58e4910259 100644 --- a/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c +++ b/MdeModulePkg/Library/FileExplorerLib/FileExplorer.c @@ -1,7 +1,7 @@ /** @file
File explorer related functions.
-Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2004 - 2019, Intel Corporation. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
@@ -1643,6 +1643,7 @@ FileExplorerLibDestructor ( ASSERT_EFI_ERROR (Status);
HiiRemovePackages (gFileExplorerPrivate.FeHiiHandle);
+ gFileExplorerPrivate.FeDriverHandle = NULL;
}
FreePool (gHiiVendorDevicePath);
|