aboutsummaryrefslogtreecommitdiff
path: root/git-compat-util.h
diff options
context:
space:
mode:
authorPetr Baudis <pasky@suse.cz>2006-06-24 04:34:38 +0200
committerJunio C Hamano <junkio@cox.net>2006-06-24 00:12:52 -0700
commit39a3f5ea7c0352a530338d30d4e618f6b4db84e4 (patch)
tree4e9b71c23ccb877c6ee73eeca278ad5c604a8eb9 /git-compat-util.h
parent5e7c91d6f744dbf9a18152d2d49057aa3dd06160 (diff)
downloadgit-39a3f5ea7c0352a530338d30d4e618f6b4db84e4.tar.gz
git-39a3f5ea7c0352a530338d30d4e618f6b4db84e4.tar.xz
Customizable error handlers
This patch makes the usage(), die() and error() handlers customizable. Nothing in the git code itself uses that but many other libgit users (like Git.pm) will. This is implemented using the mutator functions primarily because you cannot directly modifying global variables of libgit from a program that dlopen()ed it, apparently. But having functions for that is a better API anyway. Signed-off-by: Petr Baudis <pasky@suse.cz> Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'git-compat-util.h')
-rw-r--r--git-compat-util.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/git-compat-util.h b/git-compat-util.h
index 5d543d29f..b3d4cf532 100644
--- a/git-compat-util.h
+++ b/git-compat-util.h
@@ -40,6 +40,10 @@ extern void usage(const char *err) NORETURN;
extern void die(const char *err, ...) NORETURN __attribute__((format (printf, 1, 2)));
extern int error(const char *err, ...) __attribute__((format (printf, 1, 2)));
+extern void set_usage_routine(void (*routine)(const char *err) NORETURN);
+extern void set_die_routine(void (*routine)(const char *err, va_list params) NORETURN);
+extern void set_error_routine(void (*routine)(const char *err, va_list params));
+
#ifdef NO_MMAP
#ifndef PROT_READ