Hi Ævar, On Thu, 4 Feb 2021, Ævar Arnfjörð Bjarmason wrote: > Add optional printing of PCREv2 allocations to stderr for a developer > who manually changes the GREP_PCRE2_DEBUG_MALLOC definition to > "1". Maybe clarify in the oneline that this is not an environment variable, but a Makefile knob? I had to read all the way to the diff to understand that aspect. Otherwise, the patch series so far looks really fine to me. Thanks, Dscho > > This will be referenced a subsequent commit, and is generally useful > to manually see what's going on with PCREv2 allocations while working > on that code. > > Signed-off-by: Ævar Arnfjörð Bjarmason > --- > grep.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/grep.c b/grep.c > index f96d86c929..7d262a23d8 100644 > --- a/grep.c > +++ b/grep.c > @@ -42,15 +42,25 @@ static struct grep_opt grep_defaults = { > > #ifdef USE_LIBPCRE2 > static pcre2_general_context *pcre2_global_context; > +#define GREP_PCRE2_DEBUG_MALLOC 0 > > static void *pcre2_malloc(PCRE2_SIZE size, MAYBE_UNUSED void *memory_data) > { > void *pointer = malloc(size); > +#if GREP_PCRE2_DEBUG_MALLOC > + static int count = 1; > + fprintf(stderr, "PCRE2:%p -> #%02d: alloc(%lu)\n", pointer, count++, size); > +#endif > return pointer; > } > > static void pcre2_free(void *pointer, MAYBE_UNUSED void *memory_data) > { > +#if GREP_PCRE2_DEBUG_MALLOC > + static int count = 1; > + if (pointer) > + fprintf(stderr, "PCRE2:%p -> #%02d: free()\n", pointer, count++); > +#endif > free(pointer); > } > #endif > -- > 2.30.0.284.gd98b1dd5eaa7 > >