Closing ObjectOutputStream before calling toByteArray on the underlying ByteArrayOutputStream #339
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When an ObjectOutputStream instance wraps an underlying ByteArrayOutputStream instance,
it is recommended to flush or close the ObjectOutputStream before invoking the underlying instances's toByteArray().
Although in these cases this is not strictly necessary because the
writeObject method is invoked right before toByteArray, and writeObject
internally calls flush/drain. However, it is a good practice to call
flush/close explicitly as mentioned for example here.
This pull request flips the order of close and toytBeArray methods.
While there are seemingly many changes, they're all just copies of
the same change. Please let me know if you want me to extract the
common code into one helper method.