Segfault when moving entity with invalid terrain mod
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Cyphesis |
Fix Committed
|
Undecided
|
Unassigned |
Bug Description
A segfault occurs when an entity which has a terrainmod with incorrect data is moved. The fix is either to make Mercator:
Overall we need however to make sure that both the clients and the server knows how to parse terrain mods properly (the terrain mod in question, a level mod, is properly parsed in Ember). The first step would just to write down how terrain mods should be transferred. And then see how much parsing functionality we can push into lower level libs.
The bt (along with some log output):
2008-10-31 01:29:51 ERROR LevelTerrainMod defined with incorrect shape data
2008-10-31 01:29:51 ERROR Terrain Modifier could not be parsed!
Program received signal SIGSEGV, Segmentation fault.
Mercator:
392 WFMath::AxisBox<2> mod_box = mod->bbox();
(gdb) bt
#0 Mercator:
#1 0x00000000004c053a in TerrainModPrope
at ../../rulesets/
#2 0x000000000043cdad in terrainmod_
at ../../server/
#3 0x00000000004cbb6b in Entity::operation (this=0x65daa10, op=@0x70cec30, res=@0x7fff5265
#4 0x00000000004278b4 in WorldRouter:
at ../../server/
#5 0x0000000000427f1a in WorldRouter:
at ../../server/
#6 0x0000000000428539 in WorldRouter::idle (this=0x7fff526
#7 0x000000000046fc0a in CommServer::idle (this=0x7fff526
#8 0x000000000046fcb5 in CommServer::poll (this=0x7fff526
#9 0x000000000047473d in main (argc=1, argv=0x7fff5265
The same thing happens when an entity with an invalid terrainmod is removed.