From 7e0bd99d231e849cd714221d0258ad05f409b494 Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Thu, 22 Jul 2021 23:04:37 +0200 Subject: Add pj_log_active() to determine if logging is active --- src/log.cpp | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) (limited to 'src/log.cpp') diff --git a/src/log.cpp b/src/log.cpp index 4a2cc73d..9c96f53a 100644 --- a/src/log.cpp +++ b/src/log.cpp @@ -46,25 +46,36 @@ void pj_stderr_logger( void *app_data, int level, const char *msg ) } /************************************************************************/ -/* pj_vlog() */ +/* pj_log_active() */ /************************************************************************/ -static -void pj_vlog( PJ_CONTEXT *ctx, int level, const PJ* P, const char *fmt, va_list args ) - +bool pj_log_active( PJ_CONTEXT *ctx, int level ) { - char *msg_buf; int debug_level = ctx->debug_level; int shutup_unless_errno_set = debug_level < 0; /* For negative debug levels, we first start logging when errno is set */ if (ctx->last_errno==0 && shutup_unless_errno_set) - return; + return false; if (debug_level < 0) debug_level = -debug_level; if( level > debug_level ) + return false; + return true; +} + +/************************************************************************/ +/* pj_vlog() */ +/************************************************************************/ + +static +void pj_vlog( PJ_CONTEXT *ctx, int level, const PJ* P, const char *fmt, va_list args ) + +{ + char *msg_buf; + if( !pj_log_active(ctx, level) ) return; constexpr size_t BUF_SIZE = 100000; -- cgit v1.2.3