diff --git a/src/lib/internal.h b/src/lib/internal.h index 1019dd46a..9c0944aec 100644 --- a/src/lib/internal.h +++ b/src/lib/internal.h @@ -781,29 +781,40 @@ int get_controlling_tty(void); // logging #define logerror(nc, fmt, ...) do{ \ - if((nc)->loglevel >= NCLOGLEVEL_ERROR){ \ - nclog("%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } }while(0); + if(nc){ if((nc)->loglevel >= NCLOGLEVEL_ERROR){ \ + nclog("%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } \ + }else{ fprintf(stderr, "%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } \ +}while(0); #define logwarn(nc, fmt, ...) do{ \ - if((nc)->loglevel >= NCLOGLEVEL_WARNING){ \ - nclog("%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } }while(0); + if(nc){ if((nc)->loglevel >= NCLOGLEVEL_WARNING){ \ + nclog("%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } \ + }else{ fprintf(stderr, "%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } \ +}while(0); #define loginfo(nc, fmt, ...) do{ \ - if((nc)->loglevel >= NCLOGLEVEL_INFO){ \ - nclog("%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } }while(0); + if(nc){ if((nc)->loglevel >= NCLOGLEVEL_INFO){ \ + nclog("%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } \ + }else{ fprintf(stderr, "%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } \ +}while(0); #define logverbose(nc, fmt, ...) do{ \ - if((nc)->loglevel >= NCLOGLEVEL_VERBOSE){ \ - nclog("%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } }while(0); + if(nc){ if((nc)->loglevel >= NCLOGLEVEL_VERBOSE){ \ + nclog("%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } \ + }else{ fprintf(stderr, "%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } \ +}while(0); #define logdebug(nc, fmt, ...) do{ \ - if((nc)->loglevel >= NCLOGLEVEL_DEBUG){ \ - nclog("%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } }while(0); + if(nc){ if((nc)->loglevel >= NCLOGLEVEL_DEBUG){ \ + nclog("%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } \ + }else{ fprintf(stderr, "%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } \ +}while(0); #define logtrace(nc, fmt, ...) do{ \ - if((nc)->loglevel >= NCLOGLEVEL_TRACE){ \ - nclog("%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } }while(0); - + if(nc){ if((nc)->loglevel >= NCLOGLEVEL_TRACE){ \ + nclog("%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } \ + }else{ fprintf(stderr, "%s:%d:" fmt, __func__, __LINE__, ##__VA_ARGS__); } \ +}while(0); // Convert a notcurses log level to some multimedia library equivalent. int ffmpeg_log_level(ncloglevel_e level);