REF:https://bugzilla.tianocore.org/show_bug.cgi?id=1969
ReportDispatcher() may be invoked with a NULL Data argument. When TPL is
less than TPL_HIGH_LEVEL and Data is NULL, the EFI_STATUS_CODE_DATA
structure inside RscData should be cleared so listeners will not receive
data from a previous operation.
Cc: Hao A Wu <hao.a.wu@intel.com>
Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Kun Qin <Kun.Qin@microsoft.com>
Cc: Liming Gao <liming.gao@intel.com>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Reviewed-by: Dandan Bi <dandan.bi@intel.com>
and Status Code Runtime Protocol.\r
\r
Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (c) Microsoft Corporation.<BR>\r
SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
}\r
if (Data != NULL) {\r
CopyMem (&RscData->Data, Data, Data->HeaderSize + Data->Size);\r
+ } else {\r
+ ZeroMem (&RscData->Data, sizeof (RscData->Data));\r
+ RscData->Data.HeaderSize = sizeof (RscData->Data);\r
}\r
\r
Status = gBS->SignalEvent (CallbackEntry->Event);\r