Fix enum value collision between AllocatorType and ObjectTrackingEvent #832
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 ObjectTrackingEvent enum values were colliding with AllocatorType
values. This caused a bug where OBJECT_DESTROYED (value 2) was
incorrectly matching PYOBJECT_MALLOC in the deallocation check.
This would incorrectly treat pymalloc allocations as deallocations when
checking stack traces. The bug went undetected because we lacked tests
for Python allocations with trace_python_allocators enabled.
Fixed by changing ObjectTrackingEvent values to 10 and 20 to avoid
collision. Added test coverage for pymalloc allocations with Python
stack traces to prevent regressions.
Issue number of the reported bug or feature request: #
Describe your changes
A clear and concise description of the changes you have made.
Testing performed
Describe the testing you have performed to ensure that the bug has been addressed, or that the new feature works as planned.
Additional context
Add any other context about your contribution here.