Ticket #1185 (closed defect: fixed)

Opened 15 months ago

Last modified 15 months ago

Save game crash: unhandled exception PSERROR_Serialize_InvalidScriptValue

Reported by: vts Owned by: quantumstate
Priority: Release Blocker Milestone: Alpha 9
Component: UI & Simulation Keywords:
Cc:

Description (last modified by vts) (diff)

Reproducible crash when saving a game, as reported on in this thread: http://www.wildfiregames.com/forum/index.php?showtopic=15712.

A debug build produces this error message:

Unhandled exception at 0x7690fc56 in pyrogenesis_dbg.exe: Microsoft C++ exception: PSERROR_Serialize_InvalidScriptValue at memory location 0x0024c6fc..

Attaching crashlogs.

VS 2010 stack trace:

 	kernel32.dll!7690fc56() 	
 	[Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll]	
 	kernel32.dll!7690fc56() 	
 	msvcr100d.dll!_CxxThrowException(void * pExceptionObject=0x002ac41c, const _s__ThrowInfo * pThrowInfo=0x01605b98)  Line 157	C++
>	pyrogenesis_dbg.exe!CBinarySerializerScriptImpl::HandleScriptVal(unsigned __int64 val=18446462628992422368)  Line 140	C++
 	pyrogenesis_dbg.exe!CBinarySerializerScriptImpl::HandleScriptVal(unsigned __int64 val=18446462628992479680)  Line 129	C++
 	pyrogenesis_dbg.exe!CBinarySerializerScriptImpl::HandleScriptVal(unsigned __int64 val=18446462628992436984)  Line 129	C++
 	pyrogenesis_dbg.exe!CBinarySerializerScriptImpl::HandleScriptVal(unsigned __int64 val=18446462628992436696)  Line 129	C++
 	pyrogenesis_dbg.exe!CBinarySerializerScriptImpl::HandleScriptVal(unsigned __int64 val=18446462628992436408)  Line 129	C++
 	pyrogenesis_dbg.exe!CBinarySerializerScriptImpl::HandleScriptVal(unsigned __int64 val=18446462629361138496)  Line 129	C++
 	pyrogenesis_dbg.exe!CBinarySerializerScriptImpl::HandleScriptVal(unsigned __int64 val=18446462629355963160)  Line 129	C++
 	pyrogenesis_dbg.exe!CBinarySerializerScriptImpl::HandleScriptVal(unsigned __int64 val=18446462628992436624)  Line 129	C++
 	pyrogenesis_dbg.exe!CBinarySerializerScriptImpl::HandleScriptVal(unsigned __int64 val=18446462629358874912)  Line 129	C++
 	pyrogenesis_dbg.exe!CBinarySerializer<CStdSerializerImpl>::PutScriptVal(const char * __formal=0x01415b50, unsigned __int64 value=18446462629358874912)  Line 180	C++
 	pyrogenesis_dbg.exe!ISerializer::ScriptVal(const char * name=0x01415b50, CScriptVal value={...})  Line 102 + 0x22 bytes	C++
 	pyrogenesis_dbg.exe!CAIWorker::SerializeState(ISerializer & serializer={...})  Line 401	C++
 	pyrogenesis_dbg.exe!CAIWorker::Serialize(std::basic_ostream<char,std::char_traits<char> > & stream={...}, bool isDebug=false)  Line 372	C++
 	pyrogenesis_dbg.exe!CCmpAIManager::Serialize(ISerializer & serialize={...})  Line 553	C++
 	pyrogenesis_dbg.exe!CComponentManager::SerializeState(std::basic_ostream<char,std::char_traits<char> > & stream={...})  Line 254 + 0x30 bytes	C++
 	pyrogenesis_dbg.exe!CSimulation2::SerializeState(std::basic_ostream<char,std::char_traits<char> > & stream={...})  Line 765	C++
 	pyrogenesis_dbg.exe!SavedGames::Save(const std::basic_string<wchar_t,std::char_traits<wchar_t>,std::allocator<wchar_t> > & prefix="quicksave", CSimulation2 & simulation={...}, CGUIManager * gui=0x036a1288, int playerID=1)  Line 62 + 0x34 bytes	C++
 	pyrogenesis_dbg.exe!`anonymous namespace'::SaveGame(void * cbdata=0x036a1288)  Line 239 + 0x39 bytes	C++
 	pyrogenesis_dbg.exe!ScriptInterface_NativeWrapper<void>::call<void (__cdecl*)(void *)>(JSContext * cx=0x03f17810, unsigned __int64 & __formal=18446462607322775552, void (void *)* fptr=0x00ff9f00)  Line 45 + 0x16 bytes	C++
 	pyrogenesis_dbg.exe!ScriptInterface::call<void,&`anonymous namespace'::SaveGame>(JSContext * cx=0x03f17810, unsigned int argc=0, unsigned __int64 * vp=0x04000068)  Line 104 + 0x13d bytes	C++

Attachments

crashlog.dmp (61.1 KB) - added by vts 15 months ago.
crashlog.txt (14.4 KB) - added by vts 15 months ago.

Change History

Changed 15 months ago by vts

Changed 15 months ago by vts

comment:1 Changed 15 months ago by vts

  • Description modified (diff)

comment:2 Changed 15 months ago by quantumstate

  • Owner set to quantumstate
  • Status changed from new to closed
  • Resolution set to fixed

In 11198:

Made qBot not serialize the metadata which conatins too complicated a data structure and wasn't being used in any case. Fixes #1185.

comment:3 Changed 15 months ago by vts

  • Summary changed from Save game crash: CCmpDecay on non-local (network-synchronised) entities to Save game crash: unhandled exception PSERROR_Serialize_InvalidScriptValue
Note: See TracTickets for help on using tickets.