Bug #2014
Fatal error with light-decoration test map (orange bookkeeping error)
Description
This probably isn't a Doom specific bug.
Attached is a small test map (E1M1 of Doom) of mine I was using for material decoration tests; attempting to view the left most room causes Dday to crash with the following:
Attempted to free pointer without ZONEID.
Attempted to free pointer without ZONEID.
Created a new 32.0 MB memory volume.
Z_CheckHeap: allocated bytes counter is off (counter:1043156 != actual:108196178)
Z_CheckHeap: zone book-keeping is wrong
Application terminated due to exception:
Z_CheckHeap: zone book-keeping is wrong
Associated revisions
History
#1 Updated by vermil almost 10 years ago
Though sometimes Dday will also close with no error message when viewing the room. But the out file still logs something similar to the above error message in such a case.
#2 Updated by danij almost 10 years ago
- Subject changed from [Doom] Book-keeping crash to Zone-bookkeeping error (decorations?)
- Assignee set to danij
#3 Updated by vermil almost 10 years ago
To comment on the changed title; the decorations defs I was using didn't appear to be the cause of the crash (the crash occurred whether or not I loaded the decorations defs).
#4 Updated by danij almost 10 years ago
- Subject changed from Zone-bookkeeping error (decorations?) to Zone-bookkeeping error (orange bookkeeping error)
#5 Updated by danij almost 10 years ago
- Subject changed from Zone-bookkeeping error (orange bookkeeping error) to Crash with light-decoration test map (orange bookkeeping error)
#6 Updated by danij almost 10 years ago
Seems to be a orange management error in the old angle-clipper.
#7 Updated by danij almost 10 years ago
- Category set to Defect
- Status changed from New to In Progress
- Priority changed from Normal to High
- Target version set to 1.15
#8 Updated by danij almost 10 years ago
- Tags set to Renderer, Client
#9 Updated by danij almost 10 years ago
- % Done changed from 0 to 20
#10 Updated by danij almost 10 years ago
- Subject changed from Crash with light-decoration test map (orange bookkeeping error) to Fatal error with light-decoration test map (orange bookkeeping error)
- % Done changed from 20 to 50
Although revision 9a7c162c addresses the fatal error (the Zone is no longer used for allocating clip/occlusion ranges) - the bookkeeping issue remains, however.
#11 Updated by danij almost 10 years ago
This was caused by a logic error inadvertently introduced way back in 2006 when the MAX_POLY_SIDES static limit was removed. Resizing of the anglist
scratch buffer failed to ensure it was large enough in all cases.
#12 Updated by danij almost 10 years ago
- Status changed from In Progress to Closed
- % Done changed from 50 to 100
Refactor|Renderer: Use an object-oriented model for AngleClipper
Todo for later: Much more can be done to improve the implementation.
Although, it remains to be seen whether we'll still need this in the
future.