Skip to content

Comments

[Dart] Actually use resized FlexBuffers buffer#8935

Open
greenrobot-team wants to merge 1 commit intogoogle:masterfrom
greenrobot-team:dart-fix-flexbuffer-resize
Open

[Dart] Actually use resized FlexBuffers buffer#8935
greenrobot-team wants to merge 1 commit intogoogle:masterfrom
greenrobot-team:dart-fix-flexbuffer-resize

Conversation

@greenrobot-team
Copy link
Contributor

Note: this is a resubmission of #8929 from a private fork to allow edits by maintainers.

When building a FlexBuffer using the Dart Builder API and adding data that exceeds the default buffer size (2048 bytes), in the _newOffset() method a larger buffer is created, but never used. This results in a RangeError.

Resolve by actually replacing the too small with the new larger buffer. Add a test that verifies this by adding multiple large strings to a vector.

This was originally reported to us by a user, so additional details can be found in objectbox/objectbox-dart#786 (note that for the reporter the data written that exceeds the buffer size is an integer and in my test a string, so the stack traces and error messages vary slightly).

When building a FlexBuffer using the Builder and adding data that exceeds the default buffer size (2048 bytes), in _newOffset() a larger buffer is created, but never used. This results in a RangeError.

Resolve by actually replacing the too small with the new larger buffer. Add a test that verifies this by adding multiple large strings to a vector.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant