FWGS / hlsdk-portable

Portable Half-Life SDK. GoldSource and Xash3D. Crossplatform.
https://xash.su
Other
273 stars 126 forks source link

Срабатывание "stack smashing detected" при загрузке карты stalevar. #162

Closed ghost closed 3 years ago

ghost commented 3 years ago

При попытке загрузить карту stalevar, игра крашится с "stack smashing detected". При использовании старого клиента краша нету. Сама карта. (Сменить расширение на .bsp.) stalevar.zip Backtrace:

Thread 1 "xash" received signal SIGABRT, Aborted.
0x00007ffff7b24701 in raise () from /lib64/libc.so.6
#0  0x00007ffff7b24701 in raise () from /lib64/libc.so.6
No symbol table info available.
#1  0x00007ffff7b0e2b6 in abort () from /lib64/libc.so.6
No symbol table info available.
#2  0x00007ffff7b659f1 in ?? () from /lib64/libc.so.6
No symbol table info available.
#3  0x00007ffff7be6c42 in __fortify_fail () from /lib64/libc.so.6
No symbol table info available.
#4  0x00007ffff7be6c20 in __stack_chk_fail () from /lib64/libc.so.6
No symbol table info available.
#5  0x00007ffff43082b7 in UTIL_FindEntityInMap (
    name=0x7ffff4318f0e "trigger_camera", origin=0x7ffff43475d4 <gHUD+5492>, 
    angle=0x7ffff43475e0 <gHUD+5504>) at ../cl_dll/hud_spectator.cpp:298
        n = <optimized out>
        found = <optimized out>
        keyname = "\000\000ÿÿÿ\177\000\000\000\000\000\000\000\000\000\000\001\200­ûÿ\177\000\000\200Íÿÿ\000\000\000\000ÿÿÿÿÿÿÿÿ\000\000\000\000\000\000\000\000\200Íÿÿÿ\177\000\000\226Íÿÿÿÿÿÿÿÿÿÿ\000\000\000\000\000D\tVF­f?ðÊÿÿÿ\177\000\000\200áÅ÷ÿ\177", '\000' <repeats 18 times>, "\030Ëÿÿÿ\177\000\000\060Ëÿÿÿ\177", '\000' <repeats 14 times>, "R\000\000\000@\020\216öÿ\177\000\000\200\030\216öÿ\177\000\000\060Ëÿÿÿ\177\000\000\233-ðöÿ\177\000\000\001\000\000\000R\000\000\000`´0÷ÿ\177\000\000\200\030\216öÿ\177\000\000"...
        token = "µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230¼µ\236¼µ\236¼µ\236¼µ\236¼µ\236¼µ\236¼µ\236¶¯\231µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230¼µ\236¼µ\236¼µ\236¼µ\236¼µ\236¼µ\236»´\235¶¯\231µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®\230µ®"...
        pEnt = <optimized out>
        data = <optimized out>
#6  0xb899afb699afb699 in ?? ()
No symbol table info available.
#7  0x9eb5bc9eb5bc9bb1 in ?? ()
No symbol table info available.
#8  0xb5bc99afb599afb5 in ?? ()
No symbol table info available.
#9  0xbc9eb5bc9eb5bc9e in ?? ()
No symbol table info available.
#10 0x9eb5bc9eb5bc9eb5 in ?? ()
No symbol table info available.
#11 0xb5bc9eb5bc9eb5bc in ?? ()
No symbol table info available.
#12 0xbc9eb5bc9eb5bc9e in ?? ()
No symbol table info available.
#13 0x9eb5bc9eb5bc9eb5 in ?? ()
No symbol table info available.
#14 0xb5bc9eb5bc9eb5bc in ?? ()
No symbol table info available.
#15 0xbc9eb5bc9eb5bc9e in ?? ()
No symbol table info available.
#16 0x9eb5bc9eb5bc9eb5 in ?? ()
No symbol table info available.
#17 0xb5bc9eb5bc9ab0b7 in ?? ()
No symbol table info available.
#18 0xb69eb5bc9eb5bc9e in ?? ()
No symbol table info available.
#19 0x9eb5bc9eb5bc99af in ?? ()
No symbol table info available.
#20 0xafb69cb2b99eb5bc in ?? ()
No symbol table info available.
#21 0xb89ab0b79ab0b799 in ?? ()
No symbol table info available.
#22 0x99afb699afb69ab1 in ?? ()
No symbol table info available.
#23 0xafb699afb699afb6 in ?? ()
No symbol table info available.
#24 0xb699afb699afb699 in ?? ()
No symbol table info available.
#25 0x99afb699afb699af in ?? ()
No symbol table info available.
#26 0xafb699afb699afb6 in ?? ()
No symbol table info available.
#27 0xb699afb699afb699 in ?? ()
No symbol table info available.
#28 0x99afb699afb699af in ?? ()
No symbol table info available.
#29 0xafb699afb699afb6 in ?? ()
No symbol table info available.
#30 0xb699afb699afb699 in ?? ()
No symbol table info available.
#31 0x99afb699afb699af in ?? ()
No symbol table info available.
#32 0xafb699afb699afb6 in ?? ()
No symbol table info available.
#33 0xb699afb699afb699 in ?? ()
No symbol table info available.
#34 0x99afb699afb699af in ?? ()
No symbol table info available.
#35 0xafb699afb699afb6 in ?? ()
No symbol table info available.
#36 0xb699afb699afb699 in ?? ()
No symbol table info available.
#37 0x99afb699afb699af in ?? ()
No symbol table info available.
#38 0x3332005b5f38585b in ?? ()
No symbol table info available.
#39 0x3534180434331804 in ?? ()
No symbol table info available.
#40 0x00007fffffffda7c in ?? ()
No symbol table info available.
#41 0x0000555557056830 in ?? ()
No symbol table info available.
#42 0x0000555555cbc570 in ?? ()
No symbol table info available.
#43 0x3d3c1c0500000000 in ?? ()
No symbol table info available.
#44 0x0000555557056830 in ?? ()
No symbol table info available.
#45 0x00007fffffffd510 in ?? ()
No symbol table info available.
#46 0x00007ffff6eb237a in SV_FindTouchedLeafs (
    ent=<error reading variable: Cannot access memory at address 0x99afb69ab0b79e9d>, 
    node=<error reading variable: Cannot access memory at address 0x99afb69ab0b79e95>, 
    headnode=<error reading variable: Cannot access memory at address 0x99afb69ab0b79e8d>) at ../engine/server/sv_world.c:623
        sides = <error reading variable sides (Cannot access memory at address 0x99afb69ab0b79ea9)>
        leaf = <error reading variable leaf (Cannot access memory at address 0x99afb69ab0b79ead)>
Backtrace stopped: Cannot access memory at address 0x99afb69ab0b79ebd
nekonomicon commented 3 years ago

64-битный клиент? А старый какой?

ghost commented 3 years ago

@nekonomicon Да, amd64. Под старым я сам если честно не могу точно дать ответ, просто когда я обсуждал эту проблему с nillerusr, он сказал, что под старым клиентом у него всё норм (видно, он имел ввиду старые версии hlsdk-xash3d, но каких годов так и не ответил). Проверил последний коммит - баг остался.

nekonomicon commented 3 years ago

Проблема движковая и аналогична этой: https://github.com/FWGS/hlsdk-xash3d/issues/150

Здесь возвращается указатель на мусор, а должен быть адрес буффера содержащего информацию об энтитях хранящуюся внутри карты в примерно таком виде:

{
"compiler" "ZHLT v3.4 VL33 (Feb  2 2014)"
"wad" "halflife.wad;"
"mapversion" "220"
"sounds" "1"
"skyname" "cliffedge"
"MaxRange" "7000"
"classname" "worldspawn"
}
{
"origin" "-207 -1024 -220"
"angles" "0 178 0"
"classname" "info_player_deathmatch"
}
ghost commented 3 years ago

@nekonomicon Окей, как тогда правильно оформить issue по этому поводу в репе самого движка? Я просто не разбираюсь особо в кодинге.

nekonomicon commented 3 years ago

Напиши, что возможно падение при загрузке карты именно в 64-битной версии движка и приложи лог. Плюс ссылку на эту issue.

ghost commented 3 years ago

Сделал, спасибо за помощь.