diff --git a/src/log.c b/src/log.c index 0aa21e99cf7aca19f59627ce023f36c52e83d853..36dbaf986e03bfc74bd0944bb35a1c5df388e3b6 100644 --- a/src/log.c +++ b/src/log.c @@ -52,15 +52,25 @@ static const struct log_param_s log_params[OFV_LOG_DEBUG_ALL + 1] = { void init_logging(void) { pthread_mutexattr_t mutexattr; + int e; loglevel = OFV_LOG_INFO; is_a_tty = isatty(STDOUT_FILENO); - pthread_mutexattr_init(&mutexattr); + e = pthread_mutexattr_init(&mutexattr); + if (e) + fprintf(stderr, "ERROR: pthread_mutexattr_init: %s\n", + strerror(e)); #ifdef HAVE_PTHREAD_MUTEXATTR_SETROBUST - pthread_mutexattr_setrobust(&mutexattr, PTHREAD_MUTEX_ROBUST); + e = pthread_mutexattr_setrobust(&mutexattr, PTHREAD_MUTEX_ROBUST); + if (e) + fprintf(stderr, "ERROR: pthread_mutexattr_setrobust: %s\n", + strerror(e)); #endif - pthread_mutex_init(&mutex, &mutexattr); + e = pthread_mutex_init(&mutex, &mutexattr); + if (e) + fprintf(stderr, "ERROR: pthread_mutex_init: %s\n", + strerror(e)); } void set_syslog(int use_syslog) @@ -86,8 +96,12 @@ void do_log(int verbosity, const char *format, ...) { va_list args; const struct log_param_s *lp = NULL; + int e; - pthread_mutex_lock(&mutex); + e = pthread_mutex_lock(&mutex); + if (e) + fprintf(stderr, "ERROR: pthread_mutex_lock: %s\n", + strerror(e)); // Use sane default if wrong verbosity specified if (verbosity > OFV_LOG_DEBUG_ALL || verbosity < 0) @@ -111,7 +125,10 @@ void do_log(int verbosity, const char *format, ...) fflush(stdout); } - pthread_mutex_unlock(&mutex); + e = pthread_mutex_unlock(&mutex); + if (e) + fprintf(stderr, "ERROR: pthread_mutex_unlock: %s\n", + strerror(e)); } void do_log_packet(const char *prefix, size_t len, const uint8_t *packet)