Changeset 6a5be52 for src/libcfa/libhdr
- Timestamp:
- Oct 27, 2017, 5:54:56 PM (7 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
- Children:
- af0c8da
- Parents:
- 9f0b975
- Location:
- src/libcfa/libhdr
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
src/libcfa/libhdr/libdebug.c
r9f0b975 r6a5be52 9 9 // Author : Thierry Delisle 10 10 // Created On : Thu Mar 30 12:30:01 2017 11 // Last Modified By : 12 // Last Modified On : 11 // Last Modified By : 12 // Last Modified On : 13 13 // Update Count : 0 14 14 // … … 28 28 extern "C" { 29 29 30 void __lib_debug_write( int fd,const char *in_buffer, int len ) {30 void __lib_debug_write( const char *in_buffer, int len ) { 31 31 // ensure all data is written 32 for ( int count = 0, retcode; count < len; count += retcode ) { 32 for ( int count = 0, retcode; count < len; count += retcode ) { 33 33 in_buffer += count; 34 34 35 35 for ( ;; ) { 36 retcode = write( fd, in_buffer, len - count );36 retcode = write( STDERR_FILENO, in_buffer, len - count ); 37 37 38 38 // not a timer interrupt ? 39 if ( retcode != -1 || errno != EINTR ) break; 39 if ( retcode != -1 || errno != EINTR ) break; 40 40 } 41 41 … … 52 52 va_start( args, fmt ); 53 53 __lib_debug_acquire(); 54 54 55 55 int len = vsnprintf( buffer, buffer_size, fmt, args ); 56 __lib_debug_write( STDERR_FILENO,buffer, len );56 __lib_debug_write( buffer, len ); 57 57 58 58 __lib_debug_release(); … … 64 64 65 65 va_start( args, fmt ); 66 66 67 67 int len = vsnprintf( buffer, buffer_size, fmt, args ); 68 __lib_debug_write( STDERR_FILENO,buffer, len );68 __lib_debug_write( buffer, len ); 69 69 70 70 va_end( args ); … … 73 73 void __lib_debug_print_vararg( const char fmt[], va_list args ) { 74 74 int len = vsnprintf( buffer, buffer_size, fmt, args ); 75 __lib_debug_write( STDERR_FILENO,buffer, len );75 __lib_debug_write( buffer, len ); 76 76 } 77 77 … … 80 80 81 81 va_start( args, fmt ); 82 82 83 83 int len = vsnprintf( in_buffer, in_buffer_size, fmt, args ); 84 __lib_debug_write( STDERR_FILENO,in_buffer, len );84 __lib_debug_write( in_buffer, len ); 85 85 86 86 va_end( args ); -
src/libcfa/libhdr/libdebug.h
r9f0b975 r6a5be52 44 44 extern "C" { 45 45 #endif 46 #include <stdarg.h> 46 #include <stdarg.h> 47 #include <stdio.h> 47 48 48 extern void __lib_debug_write( int fd,const char *buffer, int len );49 extern void __lib_debug_write( const char *buffer, int len ); 49 50 extern void __lib_debug_acquire(); 50 51 extern void __lib_debug_release(); … … 58 59 59 60 #ifdef __CFA_DEBUG_PRINT__ 60 #define LIB_DEBUG_WRITE( fd, buffer, len ) __lib_debug_write( fd,buffer, len )61 #define LIB_DEBUG_WRITE( buffer, len ) __lib_debug_write( buffer, len ) 61 62 #define LIB_DEBUG_ACQUIRE() __lib_debug_acquire() 62 63 #define LIB_DEBUG_RELEASE() __lib_debug_release() … … 64 65 #define LIB_DEBUG_PRINT_NOLOCK(...) __lib_debug_print_nolock (__VA_ARGS__) 65 66 #define LIB_DEBUG_PRINT_BUFFER(...) __lib_debug_print_buffer (__VA_ARGS__) 66 #define LIB_DEBUG_PRINT_BUFFER_DECL( fd, ...) char text[256]; int len = snprintf( text, 256, __VA_ARGS__ ); __lib_debug_write( fd, text,len );67 #define LIB_DEBUG_PRINT_BUFFER_LOCAL( fd, ...) len = snprintf( text, 256, __VA_ARGS__ ); __lib_debug_write( fd, text,len );67 #define LIB_DEBUG_PRINT_BUFFER_DECL(...) char __dbg_text[256]; int __dbg_len = snprintf( __dbg_text, 256, __VA_ARGS__ ); __lib_debug_write( __dbg_text, __dbg_len ); 68 #define LIB_DEBUG_PRINT_BUFFER_LOCAL(...) __dbg_len = snprintf( __dbg_text, 256, __VA_ARGS__ ); __lib_debug_write( __dbg_text, __dbg_len ); 68 69 #else 69 70 #define LIB_DEBUG_WRITE(...) ((void)0)
Note: See TracChangeset
for help on using the changeset viewer.