doom2d.org https://www.doom2d.org/forum/ |
|
✫ [0.667b] Обёртка FMODex внезапно падает неясным образом https://www.doom2d.org/forum/viewtopic.php?f=54&t=3321 |
Page 1 of 1 |
Author: | Чёрный Думер [ 19 Feb 2024, 01:56 ] | |||
Post subject: | ✫ [0.667b] Обёртка FMODex внезапно падает неясным образом | |||
Отлаживал новую версию своей карты Geobase путём наблюдения за игрой ботов в TDM, по 45 штук в каждой команде. И заметил, что спустя минут 15-30 игра вылетает с вот таким вот последним прости: Code: [0:33:47] !!! Access violation ===================== $1002F075 $1003F146 $10068F66 $1006919C $10085951 $10083DD6 $10082D78 $10082F1B $10071831 $1007434B $100878EC $1008E16C $1002412F $10069D0D $004F395D PROCESSMESSAGE, line 188 of g_window.pas $004F42CD SDLMAIN, line 377 of g_window.pas $00486566 MAIN, line 576 of g_main.pas Происходить это начало ещё до всех моих недавних коммитов в игру, так что я здесь точно ни при чём. Заинтересовавшись, решил погонять игру в отладчике. И мне улыбнулась удача: Code: Index Location Line Function 0 :1002EE76 - fmodex:?System_SetDebugMode@FMOD@@YG?AW4FMOD_RESULT@@I@Z+6972 1 :1003F146 - fmodex:?System_SetDebugMode@FMOD@@YG?AW4FMOD_RESULT@@I@Z+73228 2 :10068F66 - fmodex:?getMemoryUsedImpl@DSPI@FMOD@@QAG?AW4FMOD_RESULT@@PAVMemoryTracker@2@@Z+149117 3 :1006919C - fmodex:?getMemoryUsedImpl@DSPI@FMOD@@QAG?AW4FMOD_RESULT@@PAVMemoryTracker@2@@Z+149683 4 :10085951 - fmodex:?System_GetDebugMode@FMOD@@YGIXZ+28419 5 :10083DD6 - fmodex:?System_GetDebugMode@FMOD@@YGIXZ+21384 6 :10082D78 - fmodex:?System_GetDebugMode@FMOD@@YGIXZ+17194 7 :10082F1B - fmodex:?System_GetDebugMode@FMOD@@YGIXZ+17613 8 :10071831 - fmodex:?wakeupThread@AsyncThread@FMOD@@QAG?AW4FMOD_RESULT@@XZ+20398 9 :1007434B - fmodex:?validate@ChannelI@FMOD@@SG?AW4FMOD_RESULT@@PAVChannel@2@PAPAV12@@Z+2252 10 :100878EC - fmodex:?getUserDataInternal@SoundI@FMOD@@QAG?AW4FMOD_RESULT@@PAPAX@Z+4369 11 :1008E16C - fmodex:?getUserDataInternal@SoundI@FMOD@@QAG?AW4FMOD_RESULT@@PAPAX@Z+31121 12 :1002412F - fmodex:?update@System@FMOD@@QAG?AW4FMOD_RESULT@@XZ+29 13 :10069D0D - fmodex:FMOD_System_Update+50 14 e_sound_fmod.inc 726 e_SoundUpdate 15 g_window.pas 182 ProcessMessage 16 g_window.pas 371 PerformExecution 17 g_main.pas 579 Main 18 Doom2DF.lpr 236 $main 19 :00414267 - SYSTEM_$$_EXE_ENTRY$TENTRYINFORMATION+71 20 :00401F6D - _WinMainCRTStartup+45 21 :75F6343D - kernel32:BaseThreadInitThunk+18 22 :77CA9812 - ntdll32:RtlInitializeExceptionChain+99 23 :77CA97E5 - ntdll32:RtlInitializeExceptionChain+54 Номера строк соответствуют коммиту 1f4e9f21, версия FMODex - 4.30.22 (та, что ныне поставляется с игрой; CRC32-сумма DLL-библиотеки - 16299F6D). Собирал через FPC 3.2.2 из Lazarus 3.0, однако наличие fmodex:?getUserDataInternal в списке подсказывает, что ошибка всё же где-то у нас. Возможно, связано с вот этим вот случайным вылетом, так как он тоже произошёл в коде callback'а обёртки: viewtopic.php?f=38&t=3317#p46671
|
Author: | DeaDDooMER [ 20 Mar 2024, 21:30 ] |
Post subject: | Re: [0.667b] Обёртка FMODex внезапно падает неясным образом |
Неплохо бы уточнить трапнулось оно на nil dereference или invalid address или еще как? Чёрный Думер wrote: наличие fmodex:?getUserDataInternal в списке подсказывает, что ошибка всё же где-то у нас FMOD_Sound_GetUserData() используется только в Channel_Callback().Может быть такое что бы FMOD_Channel_GetCurrentSound вернул и ОК, и sound=nil одновременно? |
Author: | Чёрный Думер [ 21 Mar 2024, 02:19 ] |
Post subject: | Re: [0.667b] Обёртка FMODex внезапно падает неясным образом |
DeaDDooMER» Неплохо бы уточнить трапнулось оно на nil dereference или invalid address или еще как? Я это в ближайшее время сам отлажу, т.к. есть подозрение, что проблема ненароком исправилась после этого коммита: https://repo.or.cz/d2df-sdl.git/commitdiff/ed4faa6fb8b106ae2c7ecfa4d84807a8c118e611 После этого запускал на ночь тот же тест с ботами, и обе команды там спокойно доигрались до отрицательных фрагов. UPD: Пока что просто отметил как "В работе". |
Page 1 of 1 | All times are UTC + 3 hours |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |