From c5d2bcd7cf6f63c70af9421c6b01cccf2a152589 Mon Sep 17 00:00:00 2001 From: Per Cederqvist <ceder@lysator.liu.se> Date: Wed, 12 Jun 1991 22:46:29 +0000 Subject: [PATCH] Initial coding. --- src/server/string-malloc.c | 47 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/server/string-malloc.c diff --git a/src/server/string-malloc.c b/src/server/string-malloc.c new file mode 100644 index 000000000..ec607530d --- /dev/null +++ b/src/server/string-malloc.c @@ -0,0 +1,47 @@ +/* + * Malloc wrappers for the string package. + * + * These functions call smalloc and also counts + * how many allocated strings there are. + */ + +#include <stdio.h> +#include "smalloc.h" +#include "log.h" +#include "exp.h" + +static int no_of_allocated_blocks = 0; + +EXPORT void * +string-malloc(size_t size) +{ + ++no_of_allocated_blocks; + return smalloc (size); +} + + +EXPORT void +string-free(void * ptr) +{ + --no_of_allocated_blocks; + sfree(ptr); +} + +EXPORT void * +string-realloc (void * ptr, + size_t size) +{ + if ( ptr == NULL ) + return string-alloc (size); + + return srealloc (ptr, size); +} + + +EXPORT void +dump_string_alloc_counts(FILE *stat_file) +{ + fprintf(stat_file, "---" __FILE__ ":\n" + "\tAllocated strings: %d\n", + no_of_allocated_blocks); +} -- GitLab