| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
There was a problem hiding this comment.
Fixes a crash (use-after-free) when unpacking from non-contiguous buffer inputs (e.g., sliced memoryview), and adds a regression test to ensure the behavior stays correct across future changes.
Changes:
Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| test/test_memoryview.py | Adds a regression test covering unpacking from non-contiguous memoryview. |
| msgpack/fallback.py | Ensures fallback Unpacker.feed() can ingest non-contiguous memoryview inputs. |
| msgpack/_unpacker.pyx | Updates contiguous-copy buffer acquisition logic to prevent use-after-free. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Sorry, something went wrong.
- Check PyObject_GetBuffer return value and raise on failure - Avoid unnecessary tobytes() copy for contiguous memoryviews in fallback feed()
| Back | FazBrowse Home | New Git URL |
What is this PR?
There currently is a crash happening when unpacking data from a non-contiguous input.
The current PR adds a test to confirm the problem is not happening anymore as well as the fix itself.
Running the reproducer with the fix applied makes the crash go away.
This is a reproducer:
Running it results in the following: