fix(storage): avoid crashes after move#7045
Merged
coryan merged 1 commit intogoogleapis:mainfrom Jul 22, 2021
Merged
Conversation
The `storage::Object*Stream` classes should not crash when used after moved-from. They do not guarantee what value they hold, but crashing on functions that just query their state is unexpected. Note that we have not defined what pre-conditions are required by each function, so we could have decided to make it UB to call these functions. That seems too hostile when "not crash but returns some undefined value" is less hostile and about as easy to implement.
Contributor
|
Google Cloud Build Logs
ℹ️ NOTE: Kokoro logs are linked from "Details" below. |
Codecov Report
@@ Coverage Diff @@
## main #7045 +/- ##
=======================================
Coverage 94.47% 94.48%
=======================================
Files 1304 1304
Lines 112300 112319 +19
=======================================
+ Hits 106100 106124 +24
+ Misses 6200 6195 -5
Continue to review full report at Codecov.
|
devjgm
approved these changes
Jul 22, 2021
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
The
storage::Object*Streamclasses should not crash when used aftermoved-from. They do not guarantee what value they hold, but crashing on
functions that just query their state is unexpected. Note that we have
not defined what pre-conditions are required by each function, so we
could have decided to make it UB to call these functions. That seems too
hostile when "not crash but returns some undefined value" is less
hostile and about as easy to implement.
Fixes #7044
This change is