summaryrefslogtreecommitdiff
path: root/MdePkg/Library
diff options
context:
space:
mode:
Diffstat (limited to 'MdePkg/Library')
-rw-r--r--MdePkg/Library/BasePcdLibNull/PcdLib.c2
-rw-r--r--MdePkg/Library/DxePcdLib/DxePcdLib.c24
-rw-r--r--MdePkg/Library/PeiPcdLib/PeiPcdLib.c23
3 files changed, 15 insertions, 34 deletions
diff --git a/MdePkg/Library/BasePcdLibNull/PcdLib.c b/MdePkg/Library/BasePcdLibNull/PcdLib.c
index e58965cc68..ab6f711a00 100644
--- a/MdePkg/Library/BasePcdLibNull/PcdLib.c
+++ b/MdePkg/Library/BasePcdLibNull/PcdLib.c
@@ -463,6 +463,8 @@ LibPcdSetPtr (
IN VOID *Buffer
)
{
+ ASSERT (SizeOfBuffer != NULL);
+
if (*SizeOfBuffer > 0) {
ASSERT (Buffer != NULL);
}
diff --git a/MdePkg/Library/DxePcdLib/DxePcdLib.c b/MdePkg/Library/DxePcdLib/DxePcdLib.c
index f0b0cbd8f6..2747df35c0 100644
--- a/MdePkg/Library/DxePcdLib/DxePcdLib.c
+++ b/MdePkg/Library/DxePcdLib/DxePcdLib.c
@@ -514,23 +514,19 @@ LibPcdSetPtr (
)
{
EFI_STATUS Status;
- UINTN Size;
+
+ ASSERT (SizeOfBuffer != NULL);
if (*SizeOfBuffer > 0) {
ASSERT (Buffer != NULL);
}
- Size = LibPcdGetSize (TokenNumber);
-
- if (*SizeOfBuffer > Size) {
- *SizeOfBuffer = Size;
+ Status = mPcd->SetPtr (TokenNumber, SizeOfBuffer, Buffer);
+
+ if (EFI_ERROR (Status)) {
return NULL;
}
- Status = mPcd->SetPtr (TokenNumber, *SizeOfBuffer, Buffer);
-
- ASSERT_EFI_ERROR (Status);
-
return Buffer;
}
@@ -728,7 +724,6 @@ LibPcdSetExPtr (
)
{
EFI_STATUS Status;
- UINTN Size;
ASSERT (Guid != NULL);
@@ -738,17 +733,12 @@ LibPcdSetExPtr (
ASSERT (Buffer != NULL);
}
+ Status = mPcd->SetPtrEx (Guid, TokenNumber, SizeOfBuffer, Buffer);
- Size = LibPcdGetExSize (Guid, TokenNumber);
- if (*SizeOfBuffer > Size) {
- *SizeOfBuffer = Size;
+ if (EFI_ERROR (Status)) {
return NULL;
}
- Status = mPcd->SetPtrEx (Guid, TokenNumber, *SizeOfBuffer, Buffer);
-
- ASSERT_EFI_ERROR (Status);
-
return Buffer;
}
diff --git a/MdePkg/Library/PeiPcdLib/PeiPcdLib.c b/MdePkg/Library/PeiPcdLib/PeiPcdLib.c
index bee5386097..b8a53185bd 100644
--- a/MdePkg/Library/PeiPcdLib/PeiPcdLib.c
+++ b/MdePkg/Library/PeiPcdLib/PeiPcdLib.c
@@ -586,7 +586,6 @@ LibPcdSetPtr (
{
EFI_STATUS Status;
PCD_PPI *PcdPpi;
- UINTN Size;
ASSERT (SizeOfBuffer != NULL);
@@ -596,17 +595,12 @@ LibPcdSetPtr (
PcdPpi = GetPcdPpiPtr ();
- Size = LibPcdGetSize (TokenNumber);
-
- if (*SizeOfBuffer > Size) {
- *SizeOfBuffer = Size;
+ Status = PcdPpi->SetPtr (TokenNumber, SizeOfBuffer, Buffer);
+
+ if (EFI_ERROR (Status)) {
return NULL;
}
- Status = PcdPpi->SetPtr (TokenNumber, *SizeOfBuffer, Buffer);
-
- ASSERT_EFI_ERROR (Status);
-
return Buffer;
}
@@ -817,7 +811,6 @@ LibPcdSetExPtr (
{
EFI_STATUS Status;
PCD_PPI *PcdPpi;
- UINTN Size;
if (*SizeOfBuffer > 0) {
ASSERT (Buffer != NULL);
@@ -825,16 +818,12 @@ LibPcdSetExPtr (
PcdPpi = GetPcdPpiPtr ();
- Size = LibPcdGetExSize (Guid, TokenNumber);
- if (*SizeOfBuffer > Size) {
- *SizeOfBuffer = Size;
+ Status = PcdPpi->SetPtrEx (Guid, TokenNumber, SizeOfBuffer, Buffer);
+
+ if (EFI_ERROR (Status)) {
return NULL;
}
- Status = PcdPpi->SetPtrEx (Guid, TokenNumber, *SizeOfBuffer, Buffer);
-
- ASSERT_EFI_ERROR (Status);
-
return Buffer;
}