-
Notifications
You must be signed in to change notification settings - Fork 23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Segmentation fault when quitting debug version #7
Comments
I think I found what caused the problem - when building rules are parsed, new CBuildRestrictionDistance and etc. instances are created, and when the building rules are copied to the unit types that have the unit-template-town-hall set as their "parent" unit type, they still refer to the old instances. So when the game exits, it deletes the unit-template-town-hall unit type (along with its BuildingRules' CBuildRestrictionDistance instances), so that when its "child" units try to access it, those CBuildRestrictionDistance instances have already been deleted. |
Should be fixed with the latest commit of Wyrmsun and Wyrmgus, let me know if you still experience it. |
Different, but still bad:
Backtrace:
|
Forgot that I just quit from the menu after it showed up |
Thanks! Different bug, yes, but same principle: "child" unit types inheriting references from their "parent", instead of a variable, causing a problem when deleting them. Should be fixed with commit 237, let me know if the bug persists or you get another crash. |
It could be the cause for that, but I don't see what would be the relationship. I would leave that issue open, and see if you experience that bug again. |
It happens even when I immediately quit from the menu.
Backtrace:
It's deleting a CBuildRestrictionDistance of the dwarven hall. I thought that the vtable of the CBuildRestrcitionDistance is corrupted. I don't even understand why gdb sais there is only one BuildingRules entry, when there are 4 restrictions in Wyrmsun/scripts/units.lua: unit-template-town-hall
The text was updated successfully, but these errors were encountered: