void membuffer_init(membuffer *m) { assert(m != NULL); m->size_inc = MEMBUF_DEF_SIZE_INC; membuffer_initialize(m); }
char *membuffer_detach(membuffer *m) { char *buf; assert(m != NULL); buf = m->buf; /* free all */ membuffer_initialize(m); return buf; }
/************************************************************************ * Function : membuffer_detach * * Parameters : * INOUT membuffer* m ; buffer to be returned and updated. * * Description : Detaches current buffer and returns it. The caller * must free the returned buffer using free(). * After this call, length becomes 0. * * Return : char* ; * a pointer to the current buffer * * Note : ************************************************************************/ char * membuffer_detach( INOUT membuffer * m ) { char *buf; assert( m != NULL ); buf = m->buf; // free all membuffer_initialize( m ); return buf; }