Changeset 5647:3707f49de5ab in roaraudio
- Timestamp:
- 09/12/12 11:30:22 (12 years ago)
- Branch:
- default
- Phase:
- public
- Files:
-
- 1 added
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
ChangeLog
r5646 r5647 13 13 * Improved kstore API (See: #317) 14 14 * Updated list of error values. 15 * Added RAT test 'buffer_set_len'. 15 16 16 17 v. 1.0beta5 - Mon Aug 20 2012 23:52 CEST -
libroar/buffer.c
r5637 r5647 510 510 size_t totlen; 511 511 void * newbuf; 512 513 _ckbuf(0) 512 size_t true_len; 513 514 ROAR_DBG("roar_buffer_set_len(buf=%p, len=%lu) = ?", buf, (long unsigned int)len); 515 516 _ckbuf(0) 517 518 ROAR_DBG("roar_buffer_set_len(buf=%p, len=%lu) = ?", buf, (long unsigned int)len); 514 519 515 520 // handle special case where user length is zero: … … 519 524 } 520 525 521 if ( len > buf->user_len ) { 526 ROAR_DBG("roar_buffer_set_len(buf=%p, len=%lu) = ?", buf, (long unsigned int)len); 527 528 // calculate the true length of our buffer starting at buf->user_data. 529 true_len = buf->len - (buf->user_data - buf->data); 530 531 if ( len > true_len ) { 532 ROAR_DBG("roar_buffer_set_len(buf=%p, len=%lu): We need to enlarge the buffer.", buf, (long unsigned int)len); 533 522 534 // we can only enlage a buffer if it's one of our own memory segments 523 535 if ( buf->flags & ROAR_BUFFER_FLAG_NOFREE ) { 536 ROAR_DBG("roar_buffer_set_len(buf=%p, len=%lu) = -1 //error=NOTSUP", buf, (long unsigned int)len); 524 537 roar_err_set(ROAR_ERROR_NOTSUP); 525 538 return -1; … … 536 549 buf->len = totlen; 537 550 } else { 551 ROAR_DBG("roar_buffer_set_len(buf=%p, len=%lu): No need to enlarge the buffer.", buf, (long unsigned int)len); 538 552 buf->user_len = len; 539 553 } 540 554 555 ROAR_DBG("roar_buffer_set_len(buf=%p, len=%lu) = 0", buf, (long unsigned int)len); 541 556 return 0; 542 557 } -
tests/Makefile
r5478 r5647 17 17 test: sandbox-clean sandbox-install test-all sandbox-clean 18 18 19 test-all: test-runnable test-roard test-rat 19 test-all: test-runnable test-roard test-rat test-buffer_set_len 20 20 21 21 test-runnable: … … 28 28 $(EXEC_HELPER) ./rat-rat 29 29 30 test-buffer_set_len: rat.o test-buffer_set_len.o 31 $(CC) $(LDFLAGS) -o rat-buffer_set_len rat.o test-buffer_set_len.o -lroar 32 LD_LIBRARY_PATH="`pwd`/sandbox/$(PREFIX_LIB)/" $(EXEC_HELPER) ./rat-buffer_set_len 30 33 31 34 sandbox-install: sandbox
Note: See TracChangeset
for help on using the changeset viewer.