|
Отвергнутые патчи Патчи, отвергнутые от приёма в GIT |
|
Опции темы | Поиск в этой теме | Опции просмотра |
02.06.2010, 10:39 | #1 |
Ученый
Регистрация: 15.03.2010
Сообщений: 261
Сказал(а) спасибо: 84
Поблагодарили 257 раз(а) в 96 сообщениях
|
[patch/dev] crash in HandleSetActiveMoverOpcode
Вот недавно словил такой краш http://paste2.org/p/860715 . Я помню ещё как-то давно он был одним из самых частых крашей, видимо попытки hununza вправить его уменьшили его частоту, однако я его таки словил на ревизии 10011
В общем мои первые потуги его исправить окончательно. Т.к. мы незнаем откуда корень краша, пока предлагаю затык. Написал два варианта. 1 Код:
diff --git a/src/game/MovementHandler.cpp b/src/game/MovementHandler.cpp index d81bb8a..765cd2f 100644 --- a/src/game/MovementHandler.cpp +++ b/src/game/MovementHandler.cpp @@ -778,6 +778,12 @@ void WorldSession::HandleSetActiveMoverOpcode(WorldPacket &recv_data) uint64 guid; recv_data >> guid; + if(!_player || !guid) + { + sLog.outError("Prevented crash with HandleSetActiveMoverOpcode"); + return; + } + if(_player->m_mover->GetGUID() != guid) { sLog.outError("HandleSetActiveMoverOpcode: incorrect mover guid: mover is " I64FMT " and should be " I64FMT, _player->m_mover->GetGUID(), guid); Код:
diff --git a/src/game/MovementHandler.cpp b/src/game/MovementHandler.cpp index d81bb8a..765cd2f 100644 --- a/src/game/MovementHandler.cpp +++ b/src/game/MovementHandler.cpp @@ -778,6 +778,12 @@ void WorldSession::HandleSetActiveMoverOpcode(WorldPacket &recv_data) uint64 guid; recv_data >> guid; + if(!_player->m_mover->GetGUID() || !guid) + { + sLog.outError("Prevented crash with HandleSetActiveMoverOpcode"); + return; + } + if(_player->m_mover->GetGUID() != guid) { sLog.outError("HandleSetActiveMoverOpcode: incorrect mover guid: mover is " I64FMT " and should be " I64FMT, _player->m_mover->GetGUID(), guid); Последний раз редактировалось Insider42; 02.06.2010 в 10:44. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Crash dump'ы под *nix | CruncH | Прочая документация | 16 | 21.08.2010 11:09 |
Crash с инстами | ice74 | Баг-репорты | 12 | 20.05.2010 12:11 |
[Crash?] удаление GO | zergtmn | Баг-репорты | 0 | 29.04.2010 22:31 |
[crash] EffectScriptEffect | Insider42 | Баг-репорты | 8 | 23.04.2010 12:49 |
Crash(game_event) | selector | Баг-репорты | 9 | 19.04.2010 19:41 |