aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2010-12-21 09:24:18 -0800
committerJunio C Hamano <gitster@pobox.com>2010-12-21 09:25:14 -0800
commit00b0d7f77b65ed2d059f893bbd2011ba5bb4252d (patch)
treefe34aef50ca3aba79424e5e6f13f6e853135d778
parent6068ac88488f01400eae5c063d8e4a08e9d87f74 (diff)
downloadgit-00b0d7f77b65ed2d059f893bbd2011ba5bb4252d.tar.gz
git-00b0d7f77b65ed2d059f893bbd2011ba5bb4252d.tar.xz
set_try_to_free_routine(NULL) means "do nothing special"
This way, the next caller that wants to disable our memory reclamation machinery does not have to define its own do_nothing() stub. Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--trace.c8
-rw-r--r--wrapper.c2
2 files changed, 4 insertions, 6 deletions
diff --git a/trace.c b/trace.c
index 62586fa37..0fb2a2c64 100644
--- a/trace.c
+++ b/trace.c
@@ -25,10 +25,6 @@
#include "cache.h"
#include "quote.h"
-static void do_nothing(size_t unused)
-{
-}
-
/* Get a trace file descriptor from GIT_TRACE env variable. */
static int get_trace_fd(int *need_close)
{
@@ -76,7 +72,7 @@ void trace_printf(const char *fmt, ...)
if (!fd)
return;
- set_try_to_free_routine(do_nothing); /* is never reset */
+ set_try_to_free_routine(NULL); /* is never reset */
strbuf_init(&buf, 64);
va_start(ap, fmt);
len = vsnprintf(buf.buf, strbuf_avail(&buf), fmt, ap);
@@ -108,7 +104,7 @@ void trace_argv_printf(const char **argv, const char *fmt, ...)
if (!fd)
return;
- set_try_to_free_routine(do_nothing); /* is never reset */
+ set_try_to_free_routine(NULL); /* is never reset */
strbuf_init(&buf, 64);
va_start(ap, fmt);
len = vsnprintf(buf.buf, strbuf_avail(&buf), fmt, ap);
diff --git a/wrapper.c b/wrapper.c
index 4c1639f15..8d7dd31c4 100644
--- a/wrapper.c
+++ b/wrapper.c
@@ -12,6 +12,8 @@ static void (*try_to_free_routine)(size_t size) = do_nothing;
try_to_free_t set_try_to_free_routine(try_to_free_t routine)
{
try_to_free_t old = try_to_free_routine;
+ if (!routine)
+ routine = do_nothing;
try_to_free_routine = routine;
return old;
}