From: Christian Couder Date: Sun, 4 Sep 2016 20:18:28 +0000 (+0200) Subject: usage: add get_error_routine() and get_warn_routine() X-Git-Tag: v2.11.0-rc0~144^2~5 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/725149beab088b1368cc01aa3f1a7845db14132d?ds=inline;hp=--cc usage: add get_error_routine() and get_warn_routine() Let's make it possible to get the current error_routine and warn_routine, so that we can store them before using set_error_routine() or set_warn_routine() to use new ones. This way we will be able put back the original routines, when we are done with using new ones. Signed-off-by: Christian Couder Signed-off-by: Junio C Hamano --- 725149beab088b1368cc01aa3f1a7845db14132d diff --git a/git-compat-util.h b/git-compat-util.h index c7a51f8d3f..de04df19a8 100644 --- a/git-compat-util.h +++ b/git-compat-util.h @@ -440,7 +440,9 @@ static inline int const_error(void) extern void set_die_routine(NORETURN_PTR void (*routine)(const char *err, va_list params)); extern void set_error_routine(void (*routine)(const char *err, va_list params)); +extern void (*get_error_routine(void))(const char *err, va_list params); extern void set_warn_routine(void (*routine)(const char *warn, va_list params)); +extern void (*get_warn_routine(void))(const char *warn, va_list params); extern void set_die_is_recursing_routine(int (*routine)(void)); extern void set_error_handle(FILE *); diff --git a/usage.c b/usage.c index 67e5526899..2fd3045535 100644 --- a/usage.c +++ b/usage.c @@ -70,11 +70,21 @@ void set_error_routine(void (*routine)(const char *err, va_list params)) error_routine = routine; } +void (*get_error_routine(void))(const char *err, va_list params) +{ + return error_routine; +} + void set_warn_routine(void (*routine)(const char *warn, va_list params)) { warn_routine = routine; } +void (*get_warn_routine(void))(const char *warn, va_list params) +{ + return warn_routine; +} + void set_die_is_recursing_routine(int (*routine)(void)) { die_is_recursing = routine;