#include #include #include #include #include #include #include #include #define BLOCK(x) do { x; }while(0) #ifndef EXTERN # define EXTERN extern #endif EXTERN Window win; EXTERN char buffer[8092]; EXTERN char* _buffer; static char* const _buf_end = buffer + sizeof buffer; #define bufclear() \ BLOCK( _buffer = buffer; _buffer[0] = '\0' ) #define bufprint(...) \ _buffer = seprint(_buffer, _buf_end, __VA_ARGS__)