Insider42
05.05.2010, 14:12
Краш появился примерно после перехода на 3.3.2.
Сейчас стоит ревизия 9835. Присутствует и на чистом мангосе.
База YTDB 543
#0 0x0061f410 in __kernel_vsyscall ()
No symbol table info available.
#1 0x004d8df0 in raise () from /lib/libc.so.6
No symbol table info available.
#2 0x004da701 in abort () from /lib/libc.so.6
No symbol table info available.
#3 0x004d226b in __assert_fail () from /lib/libc.so.6
No symbol table info available.
#4 0x08390723 in PoolGroup<Creature>::SpawnObject (this=0x988e0e8,
spawns=@0xd3715a4, limit=1, triggerFrom=119807, instantly=false)
at ../../../src/game/PoolManager.cpp:279
obj = (PoolObject *) 0xa50c0b0
i = 0
lastDespawned = 0
count = 1
__PRETTY_FUNCTION__ = "void PoolGroup<T>::SpawnObject(SpawnedPoolData&, uint32, uint32, bool) [with T = Creature]"
__FUNCTION__ = "SpawnObject"
#5 0x0838d201 in PoolManager::SpawnPoolGroup<Creature> (this=0xd371528,
pool_id=5676, db_guid=119807, instantly=false)
at ../../../src/game/PoolManager.cpp:726
No locals.
#6 0x08390b3c in PoolManager::UpdatePool<Creature> (this=0xd371528,
pool_id=5676, db_guid_or_pool_id=119807)
at ../../../src/game/PoolManager.cpp:787
motherpoolid = <value optimized out>
#7 0x081aff15 in Creature::Update (this=0x273f9bd8, diff=129)
at ../../../src/game/Creature.cpp:407
poolid = 5676
#8 0x0829b07a in VisitorHelper<MaNGOS::ObjectUpdater, Creature> (
v=@0xaa6ee280, c=@0x251c8384) at ../../../src/game/GridNotifiersImpl.h:48
No locals.
#9 0x0829cbd1 in VisitorHelper<MaNGOS::ObjectUpdater, Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > (v=@0xaa6ee280, c=@0x251c8384)
at ../../../src/game/../framework/GameSystem/TypeContainerVisitor.h:57
No locals.
#10 0x08296c3d in Map::Update (this=0x14cbb8b8, t_diff=@0xaa6ee2b8)
at ../../../src/game/../framework/GameSystem/TypeContainerVisitor.h:80
plr = <value optimized out>
area = {right_offset = 1, left_offset = 2, upper_offset = 1,
lower_offset = 2}
updater = {i_timeDiff = 129}
__FUNCTION__ = "Update"
__PRETTY_FUNCTION__ = "virtual void Map::Update(const uint32&)"
#11 0x082a8a35 in MapManager::Update (this=0x130b8140, diff=32)
at ../../../src/game/MapManager.cpp:262
Падает тут ASSERT(spawns.IsSpawnedObject<T>(obj->guid));
Есть какие-нибудь идеи по поводу исправления? тупо закомментить assert не предлагать! как минимум должна быть его замена, но никак не удаление.
Сейчас стоит ревизия 9835. Присутствует и на чистом мангосе.
База YTDB 543
#0 0x0061f410 in __kernel_vsyscall ()
No symbol table info available.
#1 0x004d8df0 in raise () from /lib/libc.so.6
No symbol table info available.
#2 0x004da701 in abort () from /lib/libc.so.6
No symbol table info available.
#3 0x004d226b in __assert_fail () from /lib/libc.so.6
No symbol table info available.
#4 0x08390723 in PoolGroup<Creature>::SpawnObject (this=0x988e0e8,
spawns=@0xd3715a4, limit=1, triggerFrom=119807, instantly=false)
at ../../../src/game/PoolManager.cpp:279
obj = (PoolObject *) 0xa50c0b0
i = 0
lastDespawned = 0
count = 1
__PRETTY_FUNCTION__ = "void PoolGroup<T>::SpawnObject(SpawnedPoolData&, uint32, uint32, bool) [with T = Creature]"
__FUNCTION__ = "SpawnObject"
#5 0x0838d201 in PoolManager::SpawnPoolGroup<Creature> (this=0xd371528,
pool_id=5676, db_guid=119807, instantly=false)
at ../../../src/game/PoolManager.cpp:726
No locals.
#6 0x08390b3c in PoolManager::UpdatePool<Creature> (this=0xd371528,
pool_id=5676, db_guid_or_pool_id=119807)
at ../../../src/game/PoolManager.cpp:787
motherpoolid = <value optimized out>
#7 0x081aff15 in Creature::Update (this=0x273f9bd8, diff=129)
at ../../../src/game/Creature.cpp:407
poolid = 5676
#8 0x0829b07a in VisitorHelper<MaNGOS::ObjectUpdater, Creature> (
v=@0xaa6ee280, c=@0x251c8384) at ../../../src/game/GridNotifiersImpl.h:48
No locals.
#9 0x0829cbd1 in VisitorHelper<MaNGOS::ObjectUpdater, Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > (v=@0xaa6ee280, c=@0x251c8384)
at ../../../src/game/../framework/GameSystem/TypeContainerVisitor.h:57
No locals.
#10 0x08296c3d in Map::Update (this=0x14cbb8b8, t_diff=@0xaa6ee2b8)
at ../../../src/game/../framework/GameSystem/TypeContainerVisitor.h:80
plr = <value optimized out>
area = {right_offset = 1, left_offset = 2, upper_offset = 1,
lower_offset = 2}
updater = {i_timeDiff = 129}
__FUNCTION__ = "Update"
__PRETTY_FUNCTION__ = "virtual void Map::Update(const uint32&)"
#11 0x082a8a35 in MapManager::Update (this=0x130b8140, diff=32)
at ../../../src/game/MapManager.cpp:262
Падает тут ASSERT(spawns.IsSpawnedObject<T>(obj->guid));
Есть какие-нибудь идеи по поводу исправления? тупо закомментить assert не предлагать! как минимум должна быть его замена, но никак не удаление.