creates a new buffer for each msg and frees the old one