From 6057514cd201cbc00108416747500bcd81ddfb4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20S=C3=A1nchez?= Date: Sat, 30 Nov 2019 11:06:21 +0100 Subject: [PATCH 1/2] Memory Leak solved --- .../Foundation/bsfUtility/Serialization/BsBinaryDiff.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Source/Foundation/bsfUtility/Serialization/BsBinaryDiff.cpp b/Source/Foundation/bsfUtility/Serialization/BsBinaryDiff.cpp index 174e1edce..353b522a3 100644 --- a/Source/Foundation/bsfUtility/Serialization/BsBinaryDiff.cpp +++ b/Source/Foundation/bsfUtility/Serialization/BsBinaryDiff.cpp @@ -495,7 +495,9 @@ namespace bs bool isModified = curFieldData->size != otherTypeSize; if (!isModified) isModified = memcmp(curFieldData->value, buffer, otherTypeSize) != 0; - + + bs_stack_free(buffer); + return isModified; } @@ -598,6 +600,9 @@ namespace bs if (!isModified) isModified = memcmp(curBuffer, otherBuffer, otherTypeSize) != 0; + bs_stack_free(otherBuffer); + bs_stack_free(curBuffer); + return isModified; } From 303fc8808f6419dd11807ccfd85042c667508617 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcos=20S=C3=A1nchez?= Date: Sat, 30 Nov 2019 11:31:46 +0100 Subject: [PATCH 2/2] Another memory leak --- Source/Foundation/bsfUtility/Serialization/BsBinaryDiff.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Source/Foundation/bsfUtility/Serialization/BsBinaryDiff.cpp b/Source/Foundation/bsfUtility/Serialization/BsBinaryDiff.cpp index 353b522a3..e618c5eb3 100644 --- a/Source/Foundation/bsfUtility/Serialization/BsBinaryDiff.cpp +++ b/Source/Foundation/bsfUtility/Serialization/BsBinaryDiff.cpp @@ -619,6 +619,8 @@ namespace bs if (!isModified) isModified = memcmp(otherFieldData->value, buffer, curTypeSize) != 0; + bs_stack_free(buffer); + return isModified; }