aboutsummaryrefslogtreecommitdiff
path: root/src/libs/dutil/WixToolset.DUtil/buffutil.cpp
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2022-05-26 17:32:45 -0500
committerSean Hall <r.sean.hall@gmail.com>2022-05-31 13:20:44 -0500
commit0f9931107ecf9e1f6714e6fd2cabc76d2ddb1153 (patch)
tree0b20cc3b0fd9f21616d09420fa0c1a90c20a70a0 /src/libs/dutil/WixToolset.DUtil/buffutil.cpp
parent6f062d1e816ff8d3127ddcbdc7ee0335873bbab8 (diff)
downloadwix-0f9931107ecf9e1f6714e6fd2cabc76d2ddb1153.tar.gz
wix-0f9931107ecf9e1f6714e6fd2cabc76d2ddb1153.tar.bz2
wix-0f9931107ecf9e1f6714e6fd2cabc76d2ddb1153.zip
Add MemSizeChecked.
Diffstat (limited to 'src/libs/dutil/WixToolset.DUtil/buffutil.cpp')
-rw-r--r--src/libs/dutil/WixToolset.DUtil/buffutil.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libs/dutil/WixToolset.DUtil/buffutil.cpp b/src/libs/dutil/WixToolset.DUtil/buffutil.cpp
index b6d58cc0..acde4dc9 100644
--- a/src/libs/dutil/WixToolset.DUtil/buffutil.cpp
+++ b/src/libs/dutil/WixToolset.DUtil/buffutil.cpp
@@ -508,10 +508,14 @@ static HRESULT EnsureBufferSize(
508{ 508{
509 HRESULT hr = S_OK; 509 HRESULT hr = S_OK;
510 SIZE_T cbTarget = ((cbSize / BUFFER_INCREMENT) + 1) * BUFFER_INCREMENT; 510 SIZE_T cbTarget = ((cbSize / BUFFER_INCREMENT) + 1) * BUFFER_INCREMENT;
511 SIZE_T cbCurrent = 0;
511 512
512 if (*ppbBuffer) 513 if (*ppbBuffer)
513 { 514 {
514 if (MemSize(*ppbBuffer) < cbTarget) 515 hr = MemSizeChecked(*ppbBuffer, &cbCurrent);
516 BuffExitOnFailure(hr, "Failed to get current buffer size.");
517
518 if (cbCurrent < cbTarget)
515 { 519 {
516 LPVOID pv = MemReAlloc(*ppbBuffer, cbTarget, TRUE); 520 LPVOID pv = MemReAlloc(*ppbBuffer, cbTarget, TRUE);
517 BuffExitOnNull(pv, hr, E_OUTOFMEMORY, "Failed to reallocate buffer."); 521 BuffExitOnNull(pv, hr, E_OUTOFMEMORY, "Failed to reallocate buffer.");