Openapoc: ์™ธ๊ณ„์ธ ๋ฐœ๊ฒฌ ์ž„๋ฌด์—์„œ [Crash] (๋ถ„ํ•  ์˜ค๋ฅ˜)

์— ๋งŒ๋“  2019๋…„ 03์›” 09์ผ  ยท  5์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: OpenApoc/OpenApoc

์‹ค์‹œ๊ฐ„ ๋ชจ๋“œ์—์„œ ์ž„๋ฌด ์ค‘ ์ถฉ๋Œ

gdb ๋ชฉ๋ก
`์Šค๋ ˆ๋“œ 1 "๋ฉ”์ธ"์ˆ˜์‹  ์‹ ํ˜ธ SIGSEGV, ๋ถ„ํ•  ์˜ค๋ฅ˜.
OpenApoc :: BattleHazard :: update (this = 0x60000000d, state = ..., ticks = 1)
/home/atrosha/OpenApoc/game/state/battle/battlehazard.cpp:490์—์„œ
490 if (ticksUntilVisible> 0)
(gdb) ์ •๋ณด ์Šคํƒ

0 OpenApoc :: BattleHazard :: update (this = 0x60000000d, state = ..., ticks = 1)

at /home/atrosha/OpenApoc/game/state/battle/battlehazard.cpp:490

OpenApoc :: Battle :: update์˜ 1 0x00000000007378f1 (this =,

state=..., ticks=1)
at /home/atrosha/OpenApoc/game/state/battle/battle.cpp:1675

2 OpenApoc :: GameState :: update์˜ 0x00000000008aa757 (this = 0x5989410, ticks = 1)

at /home/atrosha/OpenApoc/game/state/gamestate.cpp:959

3 OpenApoc :: BattleView :: update์˜ 0x000000000052bf2d (this =)

at /home/atrosha/OpenApoc/game/ui/tileview/battleview.cpp:1443

OpenApoc :: Framework :: run์˜ 4 0x00000000004569b8 (this = 0xfd14d0,

initialStage=...) at /home/atrosha/OpenApoc/framework/framework.cpp:584

5 0x000000000043a1d4 in main (argc =, argv =)

at /home/atrosha/OpenApoc/game/main.cpp:26`
!BUG! HIGH PRIORITY !BUG! low priority

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

536์€ ์ด๊ฒƒ์„ ๊ณ ์น  ์ˆ˜ ์žˆ์ง€๋งŒ์ด ๋ฒ„๊ทธ๋Š” ๋ธ”๋ฃจ ๋ฌธ์—์„œ ํ•œ ๋ฒˆ ๋ฐœ์ƒํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ…Œ์ŠคํŠธํ•˜๊ธฐ ์–ด๋ ค์šธ ๊ฒƒ์ž…๋‹ˆ๋‹ค. pull ์š”์ฒญ์„ ๋ณ‘ํ•ฉํ•˜๋ฉด์ด ๋ฌธ์ œ๋ฅผ ๋‹ซ๊ณ  ๋ฒ„๊ทธ๊ฐ€ ์ง€์†๋˜๋ฉด ๋‹ค์‹œ ์—ด์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  5 ๋Œ“๊ธ€

ํ , BattleHazard :: update ()๊ฐ€ ์ •ํฌ ๊ฐ์ฒด์—์„œ ํ˜ธ์ถœ๋˜๊ณ ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. -0x60000000d๋Š” ํž™ ํฌ์ธํ„ฐ์— ๋Œ€ํ•ด ์ œ์ •์‹ ์ด ์•„๋‹Œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค ....

์ด๊ฒƒ์€ ๋ฌดํšจํ™” ๋œ ๋ฐ˜๋ณต์ž ๋•Œ๋ฌธ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค : BattleHazard::update ๋Š” ๊ฒฐ๊ตญ BattleHazard::expand ๋ฅผ ํ˜ธ์ถœ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ทธ๋Ÿฌ๋ฉด ๊ทผ์ฒ˜ BattleHazard์—์„œ die() ๋ฅผ ํ˜ธ์ถœ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒŒ๊ดด ๋œ ์œ„ํ—˜์ด ๋ฐ˜๋ณต์—์„œ ๋‹ค์Œ ์œ„ํ—˜์ด ๋ฐœ์ƒํ•˜๋ฉด Battle::update ์—์„œ ์‚ฌ์šฉ ๋œ ๋ฐ˜๋ณต๊ธฐ๊ฐ€ ๋ฌดํšจํ™”๋ฉ๋‹ˆ๋‹ค (https://en.cppreference.com/w/cpp/container/set/erase ์ฐธ์กฐ).

์ด๊ฒƒ์ด ์ œ๊ฐ€ ์ƒ๊ฐํ•  ์ˆ˜์žˆ๋Š” ์œ ์ผํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค

529๋กœ ์ธํ•ด ํ•ด๋‹น ์ž„๋ฌด์—์„œ ๊ฒŒ์ž„์ด ๋” ์ž์ฃผ ์ถฉ๋Œํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์•„๋ฌด๋„ ๊ทธ๊ฒƒ์— ๋ฐ˜์‘ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์–ด ...

๊ทธ๋ฆฌ๊ณ  ๋‚˜์ค‘์— ์˜ค๋ฅ˜์—†์ด ์‹ค์‹œ๊ฐ„ ๋ชจ๋“œ๋กœ ๊ทธ ์ž„๋ฌด๋ฅผ ๋งˆ์ณค์Šต๋‹ˆ๋‹ค.

๋„ˆ๋ฌด ์ด์ƒํ•ด.

536์€ ์ด๊ฒƒ์„ ๊ณ ์น  ์ˆ˜ ์žˆ์ง€๋งŒ์ด ๋ฒ„๊ทธ๋Š” ๋ธ”๋ฃจ ๋ฌธ์—์„œ ํ•œ ๋ฒˆ ๋ฐœ์ƒํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ…Œ์ŠคํŠธํ•˜๊ธฐ ์–ด๋ ค์šธ ๊ฒƒ์ž…๋‹ˆ๋‹ค. pull ์š”์ฒญ์„ ๋ณ‘ํ•ฉํ•˜๋ฉด์ด ๋ฌธ์ œ๋ฅผ ๋‹ซ๊ณ  ๋ฒ„๊ทธ๊ฐ€ ์ง€์†๋˜๋ฉด ๋‹ค์‹œ ์—ด์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

์ข‹๊ณ  ๋น ๋ฅธ ์‘๋‹ต. ๋‹ค์Œ ์˜์ƒ์—์„œ ์–ธ๊ธ‰ํ•ด๋„ ๋ ๊นŒ์š”?

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰