diff --git a/MdeModulePkg/Universal/PCD/Dxe/Pcd.c b/MdeModulePkg/Universal/PCD/Dxe/Pcd.c index 0495dcfd06..e403f3d4ad 100644 --- a/MdeModulePkg/Universal/PCD/Dxe/Pcd.c +++ b/MdeModulePkg/Universal/PCD/Dxe/Pcd.c @@ -869,8 +869,9 @@ DxeRegisterCallBackOnSet ( { EFI_STATUS Status; - ASSERT (CallBackFunction != NULL); - + if (CallBackFunction == NULL) { + return EFI_INVALID_PARAMETER; + } // // Aquire lock to prevent reentrance from TPL_CALLBACK level // @@ -905,7 +906,9 @@ DxeUnRegisterCallBackOnSet ( { EFI_STATUS Status; - ASSERT (CallBackFunction != NULL); + if (CallBackFunction == NULL) { + return EFI_INVALID_PARAMETER; + } // // Aquire lock to prevent reentrance from TPL_CALLBACK level diff --git a/MdeModulePkg/Universal/PCD/Pei/Pcd.c b/MdeModulePkg/Universal/PCD/Pei/Pcd.c index f98b26ff45..41b34269a0 100644 --- a/MdeModulePkg/Universal/PCD/Pei/Pcd.c +++ b/MdeModulePkg/Universal/PCD/Pei/Pcd.c @@ -835,8 +835,10 @@ PeiRegisterCallBackOnSet ( return EFI_UNSUPPORTED; } - ASSERT (CallBackFunction != NULL); - + if (CallBackFunction == NULL) { + return EFI_INVALID_PARAMETER; + } + return PeiRegisterCallBackWorker (ExTokenNumber, Guid, CallBackFunction, TRUE); } @@ -864,8 +866,10 @@ PcdUnRegisterCallBackOnSet ( return EFI_UNSUPPORTED; } - ASSERT (CallBackFunction != NULL); - + if (CallBackFunction == NULL) { + return EFI_INVALID_PARAMETER; + } + return PeiRegisterCallBackWorker (ExTokenNumber, Guid, CallBackFunction, FALSE); }