Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Zenith432 <zenith...@users.sourceforge.net>
---
 MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c | 2 ++
 MdePkg/Library/UefiDevicePathLib/DevicePathToText.c   | 6 ++++--
 OvmfPkg/XenBusDxe/XenStore.c                          | 5 ++++-
 3 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c 
b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c
index 3f0240b..e1c3631 100644
--- a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c
+++ b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c
@@ -1771,6 +1771,7 @@ CheckRemainingSpaceForConsistencyInternal (
     TotalNeededSize += VariableEntry->VariableSize;
     VariableEntry = VA_ARG (Args, VARIABLE_ENTRY_CONSISTENCY *);
   }
+  VA_END  (Args);
 
   if (RemainingVariableStorageSize >= TotalNeededSize) {
     //
@@ -1823,6 +1824,7 @@ CheckRemainingSpaceForConsistencyInternal (
     RemainingVariableStorageSize -= VariableEntry->VariableSize;
     VariableEntry = VA_ARG (Args, VARIABLE_ENTRY_CONSISTENCY *);
   }
+  VA_END  (Args);
 
   return TRUE;
 }
diff --git a/MdePkg/Library/UefiDevicePathLib/DevicePathToText.c 
b/MdePkg/Library/UefiDevicePathLib/DevicePathToText.c
index 92db3b1..b936f85 100644
--- a/MdePkg/Library/UefiDevicePathLib/DevicePathToText.c
+++ b/MdePkg/Library/UefiDevicePathLib/DevicePathToText.c
@@ -38,10 +38,12 @@ UefiDevicePathLibCatPrint (
   )
 {
   UINTN   Count;
-  VA_LIST Args;
+  VA_LIST Args, Args2;
 
   VA_START (Args, Fmt);
-  Count = SPrintLength (Fmt, Args);
+  VA_COPY (Args2, Args);
+  Count = SPrintLength (Fmt, Args2);
+  VA_END(Args2);
 
   if ((Str->Count + (Count + 1)) * sizeof (CHAR16) > Str->Capacity) {
     Str->Capacity = (Str->Count + (Count + 1) * 2) * sizeof (CHAR16);
diff --git a/OvmfPkg/XenBusDxe/XenStore.c b/OvmfPkg/XenBusDxe/XenStore.c
index 61976f9..aea887b 100644
--- a/OvmfPkg/XenBusDxe/XenStore.c
+++ b/OvmfPkg/XenBusDxe/XenStore.c
@@ -1319,8 +1319,11 @@ XenStoreVSPrint (
   CHAR8 *Buf;
   XENSTORE_STATUS Status;
   UINTN BufSize;
+  VA_LIST Marker2;
 
-  BufSize = SPrintLengthAsciiFormat (FormatString, Marker) + 1;
+  VA_COPY(Marker2, Marker);
+  BufSize = SPrintLengthAsciiFormat (FormatString, Marker2) + 1;
+  VA_END(Marker2);
   Buf = AllocateZeroPool (BufSize);
   AsciiVSPrint (Buf, BufSize, FormatString, Marker);
   Status = XenStoreWrite (Transaction, DirectoryPath, Node, Buf);
-- 
2.5.5
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to