<div dir="ltr"><div>Hi Hugh,<br><br></div>As you might remember, some years ago I packages SDL Asylum for Debian. Yesterday I received a bug report that the game crashes at the end of the second level. I recompiled the game with "-fsanitize=address,undefined" which discovered a stray pointer in the collision detection code, seemingly always involving the alien2 function. This seems a likely cause for random crashes... A typical backtrace looks like this:<br><div><div><div><br>==29192==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x7f1eceab9647 at pc 0x40f2d9 bp 0x7fffa1788110 sp 0x7fffa1788108<br>READ of size 1 at 0x7f1eceab9647 thread T0<br>    #0 0x40f2d8 in albcheck(alent*) /home/pdewacht/asylum/asylum-0.3.2/alien.c:1554<br>    #1 0x41a26b in alien2(alent*) /home/pdewacht/asylum/asylum-0.3.2/alien.c:353<br>    #2 0x4215df in moval() /home/pdewacht/asylum/asylum-0.3.2/alien.c:102<br>    #3 0x4230ad in game() /home/pdewacht/asylum/asylum-0.3.2/asylum.c:168<br>    #4 0x4235c4 in init() /home/pdewacht/asylum/asylum-0.3.2/asylum.c:89<br>    #5 0x402d83 in main /home/pdewacht/asylum/asylum-0.3.2/asylum.c:488<br>    #6 0x7f1edf2a0b44 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b44)<br>    #7 0x402f24 (/home/pdewacht/asylum/asylum-0.3.2/asylum+0x402f24)<br><br>0x7f1eceab9647 is located 441 bytes to the left of 147456-byte region [0x7f1eceab9800,0x7f1eceadd800)<br>allocated by thread T0 here:<br>    #0 0x7f1ee15a674f in malloc (/usr/lib/x86_64-linux-gnu/libasan.so.1+0x5474f)<br>    #1 0x428e32 in loadhammered(char**, char*, char*) /home/pdewacht/asylum/asylum-0.3.2/file.c:167<br><br></div><div>Both the original submitter and I found some other problems, patches for which are attached. They're probably not related to the crash the submitter experienced though.<br><br></div><div>Best regards,<br></div><div>Peter De Wachter<br></div></div></div></div>