AssertionError in threadSimpleManager.cxx if frame rendered after long delay
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Panda3D |
Fix Released
|
Undecided
|
David Rose |
Bug Description
If I call graphicsEngine.
AssertionError: record.
This is an issue in the case where the application is left blocked (by a wx dialog in my case) and then unblocked much later. In my case, if the user leaves a dialog open, and comes back much later and closes it, Panda3D crashes. I'm not sure how long it takes, but its less than several hours, and more than 4 minutes. Due to the excessive time required to test this, I have not verified if this is only an issue for the first frame (which is when it occurred for me the 2 times I produced it).
Produced both times in Panda3D 1.7.0 on Mac.
Changed in panda3d: | |
status: | Fix Committed → Fix Released |
This is a simple case of integer overflow in the thread accounting code. The assertion will happen if you pause for more than 2^31 ticks, where a tick is 1/1000000 second, so a pause of 2148 seconds, or about 35 minutes, will be sufficient to cause the crash.
Fix committed.