Make sure to release the buffer.
Run synchronously when no completion handler is provided.