Skip to content

Commit 657b704

Browse files
committed
Do not ignore error in os_free() when size == 0
Ref: #475 Ref: #481 Signed-off-by: Lukasz Dorau <[email protected]>
1 parent 41e4c6e commit 657b704

File tree

2 files changed

+2
-3
lines changed

2 files changed

+2
-3
lines changed

src/provider/provider_os_memory.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -659,8 +659,7 @@ static umf_result_t os_free(void *provider, void *ptr, size_t size) {
659659

660660
errno = 0;
661661
int ret = os_munmap(ptr, size);
662-
// ignore error when size == 0
663-
if (ret && (size > 0)) {
662+
if (ret) {
664663
os_store_last_native_error(UMF_OS_RESULT_ERROR_FREE_FAILED, errno);
665664
LOG_PERR("memory deallocation failed");
666665

test/provider_os_memory.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,7 @@ TEST_P(umfProviderTest, get_name) {
265265
TEST_P(umfProviderTest, free_size_0_ptr_not_null) {
266266
umf_result_t umf_result =
267267
umfMemoryProviderFree(provider.get(), INVALID_PTR, 0);
268-
ASSERT_EQ(umf_result, UMF_RESULT_SUCCESS);
268+
ASSERT_EQ(umf_result, UMF_RESULT_ERROR_MEMORY_PROVIDER_SPECIFIC);
269269
}
270270

271271
TEST_P(umfProviderTest, free_NULL) {

0 commit comments

Comments
 (0)