mapserver
mapserver copied to clipboard
invalid memory address or nil pointer dereference with smartshop
Mapserver v4.7.0 suddenly start crashing like this. An upgrade to 4.9.4 didn't change anything. Might it be DB corruption ?
time="2025-09-09T18:10:56Z" level=info msg="Starting mapserver" version=4.9.4
time="2025-09-09T18:10:56Z" level=info msg="DB Migrated" version=2
time="2025-09-09T18:10:56Z" level=info msg="Starting http server" port=8080 webdev=false
time="2025-09-09T18:10:56Z" level=info msg="using embed mode"
time="2025-09-09T18:10:56Z" level=info msg="Starting incremental rendering job" LastMtime=1757356669778
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x10 pc=0xa44bd7]
goroutine 27 [running]:
github.com/minetest-go/mapparser.(*Inventory).IsEmpty(...)
/home/runner/go/pkg/mod/github.com/minetest-go/[email protected]/inventory.go:9
mapserver/mapobject.(*SmartShopBlock).onMapObject(0xc0000b8380?, 0xc000609bf0, 0x5, 0x5, 0xa, 0xc000ef95c0)
/home/runner/work/mapserver/mapserver/mapobject/smartshop.go:22 +0x217
mapserver/mapobject.(*Listener).OnEvent.func1(...)
/home/runner/work/mapserver/mapserver/mapobject/listener.go:69
mapserver/coords.IterateMapblock(...)
/home/runner/work/mapserver/mapserver/coords/iterate_mapblock.go:9
mapserver/mapobject.(*Listener).OnEvent(0xc0000ac000, {0xbe642d?, 0x10?}, {0xafdd00, 0xc00119c120})
/home/runner/work/mapserver/mapserver/mapobject/listener.go:56 +0xf42
mapserver/eventbus.(*Eventbus).Emit(0xc0006a4d80?, {0xbe642d, 0x11}, {0xafdd00, 0xc00119c120})
/home/runner/work/mapserver/mapserver/eventbus/eventbus.go:35 +0xc8
mapserver/mapblockaccessor.(*MapBlockAccessor).FindMapBlocksByMtime(0xc0000bd740, 0x1992a9ebb52, 0x2710, {0xc0000aa160, 0x2, 0x7bdbe5?})
/home/runner/work/mapserver/mapserver/mapblockaccessor/mtime.go:79 +0xa66
mapserver/tilerendererjob.incrementalRender(0xc0000fe000)
/home/runner/work/mapserver/mapserver/tilerendererjob/incremental.go:27 +0x1be
mapserver/tilerendererjob.Job(0xc0000fe000)
/home/runner/work/mapserver/mapserver/tilerendererjob/job.go:27 +0x4c
created by main.main in goroutine 1
/home/runner/work/mapserver/mapserver/main.go:77 +0x35a