Changeset 681
- Timestamp:
- 11/01/07 14:53:23 (15 years ago)
- Files:
-
- trunk/libffado/src/debugmodule/debugmodule.cpp (modified) (12 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/libffado/src/debugmodule/debugmodule.cpp
r671 r681 343 343 DebugModuleManager::showBackLog() 344 344 { 345 DebugModuleManager *m=DebugModuleManager::instance();346 345 fprintf(stderr, "=====================================================\n"); 347 346 fprintf(stderr, "* BEGIN OF BACKLOG PRINT\n"); … … 353 352 } 354 353 fprintf(stderr, "\n"); 355 354 356 355 fprintf(stderr, "=====================================================\n"); 357 356 fprintf(stderr, "* END OF BACKLOG PRINT\n"); … … 386 385 DebugModuleManager::backlog_print(const char *fmt, ...) 387 386 { 387 const char *warning = "WARNING: message truncated!\n"; 388 const int warning_size = 32; 388 389 char msg[MB_BUFFERSIZE]; 389 390 va_list ap; … … 394 395 /* format the message first */ 395 396 va_start(ap, fmt); 396 if (vsnprintf(msg, MB_BUFFERSIZE, fmt, ap) >= MB_BUFFERSIZE) { 397 print("WARNING: message truncated!\n"); 397 if (vsnprintf(msg, BACKLOG_MB_BUFFERSIZE-warning_size, fmt, ap) 398 >= (BACKLOG_MB_BUFFERSIZE-warning_size)) { 399 // output a warning if the message was truncated 400 snprintf(msg+BACKLOG_MB_BUFFERSIZE-warning_size, warning_size, "%s", warning); 398 401 } 399 402 va_end(ap); … … 418 421 DebugModuleManager::print(const char *fmt, ...) 419 422 { 423 const char *warning = "WARNING: message truncated!\n"; 424 const int warning_size = 32; 420 425 char msg[MB_BUFFERSIZE]; 421 426 va_list ap; … … 428 433 /* format the message first, to reduce lock contention */ 429 434 va_start(ap, fmt); 430 if (vsnprintf(msg, MB_BUFFERSIZE, fmt, ap) >= MB_BUFFERSIZE) { 431 print("WARNING: message truncated!\n"); 435 if (vsnprintf(msg, MB_BUFFERSIZE-warning_size, fmt, ap) >= MB_BUFFERSIZE-warning_size) { 436 // output a warning if the message was truncated 437 snprintf(msg+MB_BUFFERSIZE-warning_size, warning_size, "%s", warning); 432 438 } 433 439 va_end(ap); … … 440 446 return; 441 447 } 442 443 // the backlog 444 strncpy(bl_mb_buffers[bl_mb_inbuffer], msg, BACKLOG_MB_BUFFERSIZE); 445 bl_mb_inbuffer = BACKLOG_MB_NEXT(bl_mb_inbuffer); 446 448 447 449 #ifdef DO_MESSAGE_BUFFER_PRINT 448 450 ntries=5; … … 472 474 DebugModuleManager::backlog_va_print (const char *fmt, va_list ap) 473 475 { 476 const char *warning = "WARNING: message truncated!\n"; 477 const int warning_size = 32; 474 478 char msg[MB_BUFFERSIZE]; 475 479 unsigned int ntries; … … 477 481 478 482 /* format the message first */ 479 if (vsnprintf(msg, MB_BUFFERSIZE, fmt, ap) >= MB_BUFFERSIZE) { 480 print("WARNING: message truncated!\n"); 483 if (vsnprintf(msg, BACKLOG_MB_BUFFERSIZE-warning_size, fmt, ap) 484 >= BACKLOG_MB_BUFFERSIZE-warning_size) { 485 // output a warning if the message was truncated 486 snprintf(msg+BACKLOG_MB_BUFFERSIZE-warning_size, warning_size, "%s", warning); 481 487 } 482 488 … … 500 506 DebugModuleManager::va_print (const char *fmt, va_list ap) 501 507 { 508 const char *warning = "WARNING: message truncated!\n"; 509 const int warning_size = 32; 502 510 char msg[MB_BUFFERSIZE]; 503 511 … … 508 516 509 517 /* format the message first, to reduce lock contention */ 510 if (vsnprintf(msg, MB_BUFFERSIZE, fmt, ap) >= MB_BUFFERSIZE) { 511 print("WARNING: message truncated!\n"); 512 } 513 518 if (vsnprintf(msg, MB_BUFFERSIZE-warning_size, fmt, ap) >= MB_BUFFERSIZE-warning_size) { 519 // output a warning if the message was truncated 520 snprintf(msg+MB_BUFFERSIZE-warning_size, warning_size, "%s", warning); 521 } 522 514 523 if (!mb_initialized) { 515 524 /* Unable to print message with realtime safety. … … 519 528 return; 520 529 } 521 522 // the backlog523 strncpy(bl_mb_buffers[bl_mb_inbuffer], msg, BACKLOG_MB_BUFFERSIZE);524 bl_mb_inbuffer = BACKLOG_MB_NEXT(bl_mb_inbuffer);525 530 526 531 #ifdef DO_MESSAGE_BUFFER_PRINT