From e404e90246b2fa5dc169fdf07d70aca3c920b262 Mon Sep 17 00:00:00 2001 From: Pip Cet Date: Wed, 9 Jul 2025 14:52:06 +0000 Subject: [PATCH] Better label for igc-allocated handlers (bug#78941) * src/igc.c (igc_xzalloc_ambig_with_label): New. (igc_xzalloc_ambig, igc_alloc_handler): Use it. --- src/igc.c | 12 +++++++++--- src/igc.h | 1 + 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/igc.c b/src/igc.c index 9c1b201446f..f176b9aa4d0 100644 --- a/src/igc.c +++ b/src/igc.c @@ -3396,7 +3396,7 @@ igc_xalloc_raw_exact (size_t n) } void * -igc_xzalloc_ambig (size_t size) +igc_xzalloc_ambig_with_label (size_t size, const char *label) { /* Can't make a root that has zero length. Want one to be able to detect calling igc_free on something not having a root. */ @@ -3406,10 +3406,16 @@ igc_xzalloc_ambig (size_t size) size++; void *p = xzalloc (size); void *end = (char *) p + size; - root_create_ambig (global_igc, p, end, "xzalloc-ambig"); + root_create_ambig (global_igc, p, end, label ? label : "igc-xzalloc-ambig"); return p; } +void * +igc_xzalloc_ambig (size_t size) +{ + return igc_xzalloc_ambig_with_label (size, NULL); +} + void * igc_xnmalloc_ambig (ptrdiff_t nitems, ptrdiff_t item_size) { @@ -4648,7 +4654,7 @@ igc_alloc_blv (void) void * igc_alloc_handler (void) { - struct handler *h = igc_xzalloc_ambig (sizeof *h); + struct handler *h = igc_xzalloc_ambig_with_label (sizeof *h, "handler"); return h; } diff --git a/src/igc.h b/src/igc.h index 1de17c62240..5826c43bb76 100644 --- a/src/igc.h +++ b/src/igc.h @@ -85,6 +85,7 @@ void *igc_alloc_global_ref (void); struct Lisp_Buffer_Local_Value *igc_alloc_blv (void); void *igc_alloc_handler (void); void *igc_xzalloc_ambig (size_t size); +void *igc_xzalloc_ambig_with_label (size_t size, const char *label); void *igc_realloc_ambig (void *block, size_t size); #ifdef ENABLE_CHECKING void igc_check_freeable (void *p);