#ifndef LBX_MISC_H_ #define LBX_MISC_H_ #ifdef HAVE_CONFIG_H # include "config.h" #endif #include #define MIN(a,b) (((a)<(b))?(a):(b)) #define MAX(a,b) (((a)>(b))?(a):(b)) #ifndef NDEBUG # define _lbx_dbgprint(str) (fprintf(stderr, str " [%s, %s:%d]\n", \ __func__, __FILE__, __LINE__)) # define _lbx_assert(expr) ((!(expr)) \ ? (_lbx_dbgprint("format assertion failed: " #expr), 0) \ : 1) #else # define _lbx_dbgprint(str) 0 # define _lbx_assert(expr) ((expr) ? 1 : 0) #endif /** _lbx_fseek() * Seeks the specified file to the specified offset, given that the file is * currently positioned at *current. If the file does not support seeking, * and offset > *current, perform the seek by reading (and discarding) data. */ int _lbx_fseek(FILE *f, long *current, size_t offset); #endif