Redone flush_buffer logic, fixes #39