2025-07-21 15:02 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0003089Spring engineLuapublic2012-05-14 20:22
ReporterRafal99 
Assigned ToKloot 
PrioritynormalSeverityminorReproducibilitysometimes
StatusresolvedResolutionfixed 
Product Version88.0 
Target VersionFixed in Version89.0 
Summary0003089: Crash in engine provided Lua unit script framework gadget - WITH FIX
Descriptionunit_script.lua gadget crashes at line 781 in this replay:
http://zero-k.info/Battles/Detail/75681
two times:
-in frame 52171 (28:59)
-in frame 55493 (30:49)

Upon time-consuming investigation I found the cause of the crash:
Two animation threads from one unit were finishing their Sleep() in one
frame but the first one on WakeUp was killing the second one with Signal() function. This in turn caused the second thread to be removed from the "sleepers" table and it caused the for loop which was waking the threads to have its index to go our of range, because "sleepers" table was now shorter than it was at the start of the loop.

Enough words, here is one possible way to fix it:
http://code.google.com/p/zero-k/source/detail?r=6505

TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files

-Relationships
+Relationships

-Notes

~0008697

Kloot (developer)

thanks, if only all reports were this nice..
+Notes

-Issue History
Date Modified Username Field Change
2012-05-14 01:12 Rafal99 New Issue
2012-05-14 18:31 Kloot Status new => assigned
2012-05-14 18:31 Kloot Assigned To => Kloot
2012-05-14 20:22 Kloot Note Added: 0008697
2012-05-14 20:22 Kloot Status assigned => resolved
2012-05-14 20:22 Kloot Fixed in Version => 89.0
2012-05-14 20:22 Kloot Resolution open => fixed
+Issue History