ntdll: Do not use find_subheap() to find the subheap corresponding to an uncommitted region.
1 unresolved thread
The commit end of a subheap may be equal to the beginning of another subheap, in which case find_subheap() will return that one, and we may effectively skip backwards in the subheap list.
There may be a more architecturally palatable way to solve this problem, but hopefully this is enough to at least demonstrate it.
Merge request reports
Activity
added 1 commit
- 05362793 - ntdll: Do not use find_subheap() to find the subheap corresponding to an uncommitted region.
Zebediah Figura replied on the mailing list:
I didn't include a test with this because I don't think it's possible to reliably trigger the condition. It relies on an allocated block stretching to the end of a subheap (which I think it's possible to make happen reliably, although it'd end up relying on internal heap details to some degree) but also on two subsequent subheaps being allocated to contiguous VM slices in reverse order. I'm able to consistently trigger it (on 32-bit) with the attached diff to the heap tests, though._______________________________________________ wine-gitlab mailing list -- wine-gitlab@winehq.org To unsubscribe send an email to wine-gitlab-leave@winehq.org
requested review from @rbernon
mentioned in merge request !523 (merged)
Please register or sign in to reply