So, I looked in the sources and two observations appears to me.
You are right, buffer is implemented as std::vector, but this member is private and hasn't any accessors to it.
consume method doesn't touch this field.
For your case, you should destroy buffer object after consume. It's the easiest way to address problem. For optimization purposes, you could remember last buffer size and create new buffer with given capacity by passing last size to constructor. You could write a wrapper around this functionality to achieve readable code.