I've included a sample pk3 that's just a playerpawn with a Tick() override that calls SetViewPos, all you have to do to get it to crash with a Very Fatal Error is start a new game, save, then load a few times.
Checking it out in the Visual Studio debugger seems to show that the engine is trying to destroy a ViewPosition object that doesn't exist.