BUG: add bounds-checking to in-place string multiply #29074
Merged
+74
−23
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.
Backport of #29060.
Fixes #29011.
Re-do of #29056 without any backwards-incompatible changes.
Adds bounds-checking to the string multiply core, since in-place multiply via
*=
can bypass the code that constructs output buffers innp.strings.multiply
.BUG: add bounds-checking to in-place string multiply
MNT: check for overflow and raise OverflowError
MNT: respond to review suggestion
MNT: handle overflow in one more spot
MNT: make test behave the same on all architectures
MNT: reorder to avoid work in some cases