<p></p>
<p>Just received a surprising crash report while playing wandering-hamster.rpg; an NPC walkabout slice (which does exist) with no sprite component. Should be impossible. There are no errors in g_debug.txt. From the file timestamps, it happened immediately after entering map 16.</p>
<p>It looks like the user opened wandering-hamster.rpg in Custom and saved it:<br>
<code>0.7  Last edited by: [[OHRRPGCE gorgonzola 20200502.11799 gfx_directx+sdl+fb/music_sdl FreeBASIC 1.05.0 (01-31-2016) GCC 5.3.0 x86 pdb  Built on vampirecell  -g -gen gcc Win32 32-bit]] branch_rev 11797</code><br>
(Maybe we should have some better way of identifying a game, like hashing the .rpg every time it's saved, or every time it's distributed, saving the history of hashes in general.reld, and including that in crash reports.)</p>
<p>Unless we find something odd with map 16, I have no idea how to narrow down this bug, since the minidumps don't include any of the heap. Maybe we should include a dump of the slice tree in crash reports.</p>
<pre><code>######### Report 1851c8e2-5c0c-41f3-9cc5-28dcfea6c351 #########
           Upload time 2020-07-16 03:08:48 UTC
            Crash time 2020-07-14 18:20:20 UTC
               AppName OHRRPGCE-Game
       ExceptionModule C:\OHRRPGCE\support\CrashRpt1403.dll
      ExceptionAddress 0x73e047fc
     MemoryUsageKbytes 34996
       OperatingSystem Windows 10 Home Build 18363
           GeoLocation en-us
            Crash Time 5627.4845610
         Recent File 0 opened=5627.4636635 size=1926  path=C:\Users\thald\AppData\Local\Temp\ohrrpgce20200714124633.145.tmp\playing.tmp\\wander.z16
         Recent File 1 opened=5627.4646809 size=9461  path=C:\Users\thald\AppData\Local\Temp\ohrrpgce20200714124633.145.tmp\playing.tmp\\wander.e16
         Recent File 2 opened=5627.4840571 size=14400  path=C:\Users\thald\AppData\Local\Temp\ohrrpgce20200714124633.145.tmp\playing.tmp\\wander.dox
         Recent File 3 opened=5627.4657373 size=3807  path=C:\Users\thald\AppData\Local\Temp\ohrrpgce20200714124633.145.tmp\playing.tmp\\wander.n16
         Recent File 4 opened=5627.4823934 size=324493 omitting=toobig path=C:\Users\thald\AppData\Local\Temp\ohrrpgce20200714124633.145.tmp\playing.tmp\\walkabouts.rgfx
         Recent File 5 opened=5627.4790972 size=3007  path=C:\Users\thald\AppData\Local\Temp\ohrrpgce20200714124633.145.tmp\playing.tmp\\wander.l16
                 Build OHRRPGCE gorgonzola 20200502.11799 gfx_directx+sdl+fb/music_sdl FreeBASIC 1.05.0 (01-31-2016) GCC 5.3.0 x86 pdb  Built on vampirecell -g -gen gcc Win32 32-bit
                 Error UPDATE_WALKABOUT_POS: missing sprite component
           Extra files g_debug.txt g_debug_archive.txt wander.dox wander.e16 wander.l16 wander.n16 wander.z16
     Backend init info gfx_directx
          Playing game C:\OHRRPGCE\wandering-hamster.rpg
              Username thald
             Game name Wandering Hamster
            Git commit 8f5f78e36
               Symbols ohrrpgce-symbols-win-music_sdl-r11799-2020-05-02-gorgonzola.7z
                   CPU x86 GenuineIntel family 6 model 142 stepping 12, 4 cores
             Exception 0x00000000 / 0x00000000
Minidump crash address 0x73e047fc
        Crashed thread 0
</code></pre>
<pre><code>@ UPDATE_WALKABOUT_POS   (walkabouts.bas:176 + 0x15)
    174  DIM sprsl as Slice Ptr
    175  sprsl = LookupSlice(SL_WALKABOUT_SPRITE_COMPONENT, walkabout_cont)
 -> 176  BUG_IF(sprsl = NULL, "missing sprite component")
    177  sprsl->Y = gmap(11) - z
@ UPDATE_WALKABOUT_NPC_SLICES   (walkabouts.bas:298 + 0x1c)
    296     END IF
    297    END IF
 -> 298    update_walkabout_pos npc(i).sl, npc(i).x, npc(i).y, npc(i).z
    299    IF npc(i).sl <> 0 THEN
@ DISPLAYALL            (game.bas:1076 + 0x5)
   1074  ' is to only update a single slice as required from setmapxy,
   1075  ' or to stop using walkabout slices there.
 ->1076  update_walkabout_slices()
   1077 
</code></pre>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/ohrrpgce/ohrrpgce/issues/1137">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AMWGWZRSEFHJPDJ7KFXLEPLR4FNHFANCNFSM4O7TTNZA">unsubscribe</a>.<img src="https://github.com/notifications/beacon/AMWGWZXZ57DV7HGT5FCEWE3R4FNHFA5CNFSM4O7TTNZKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4J2W527Q.gif" height="1" width="1" alt="" /></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/ohrrpgce/ohrrpgce/issues/1137",
"url": "https://github.com/ohrrpgce/ohrrpgce/issues/1137",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>