Loading...
--- libmalloc/libmalloc-715.100.22/src/malloc_exclaves.c
+++ libmalloc/libmalloc-646.0.13/src/malloc_exclaves.c
@@ -38,8 +38,6 @@
malloc_zone_t ** __unsafe_indexable malloc_zones = _malloc_zones;
bool malloc_sanitizer_enabled = false;
-
-
#if __LIBLIBC_F_ASAN_INSTRUMENTATION
static struct malloc_sanitizer_poison malloc_poison_default = {
.heap_allocate_poison = __asan_poison_heap_memory_alloc,
@@ -143,7 +141,6 @@
logical_ncpus = _liblibc_plat_num_cpus;
phys_ncpus = _liblibc_plat_num_cpus;
-
const unsigned malloc_debug_flags = MALLOC_ABORT_ON_CORRUPTION |
MALLOC_ABORT_ON_ERROR;
mfm_initialize();
@@ -412,7 +409,9 @@
zone = _find_registered_zone(ptr, &size, known_non_default);
if (!zone) {
- malloc_report_pointer_was_not_allocated(MALLOC_REPORT_CRASH, ptr);
+ malloc_report(MALLOC_REPORT_DEBUG | MALLOC_REPORT_NOLOG,
+ "*** error for object %p: pointer being freed was not allocated\n",
+ ptr);
} else if (zone->free_definite_size) {
malloc_zone_free_definite_size(zone,
__unsafe_forge_bidi_indexable(void *, ptr, size), size);
@@ -484,8 +483,9 @@
} else {
zone = _find_registered_zone(old_ptr, NULL, false);
if (!zone) {
- malloc_report_pointer_was_not_allocated(MALLOC_REPORT_CRASH,
- in_ptr);
+ malloc_report(MALLOC_REPORT_CRASH,
+ "*** error for object %p: pointer being realloc'd was not allocated\n",
+ in_ptr);
} else {
retval = malloc_zone_realloc(zone, old_ptr, new_size);
}
@@ -511,12 +511,7 @@
void *ptr = realloc(in_ptr, new_size);
if (!ptr && in_ptr && new_size != 0) {
- // Save and restore `errno`, because `realloc` will set it to ENOMEM
- // on allocation failure, but it could be overwritten if `free` calls
- // into a library function that also modifies `errno`
- errno_t error = errno;
free(in_ptr);
- errno = error;
}
return ptr;