This is the call stack while debugging the exe :
> ntdll.dll!77dd27a0()
[Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll]
ntdll.dll!77e0afbf()
ntdll.dll!77dd578e()
ntdll.dll!77e0b10d()
ntdll.dll!77dd578e()
ntdll.dll!77e0b10d()
ntdll.dll!77e0a71a()
msvcr90.dll!737f36c5()
msvcr90.dll!737f38b3()
msvcr90.dll!737f3600()
msvcr80.dll!736d532d()
msvcp90.dll!735b5e94()
pyrogenesis.exe!CSimulation2Impl::SerializationTestState::SerializationTestState() + 0x5b bytes C++
msvcr90.dll!7383a4f5()
msvcr90.dll!7383a536()
msvcr90.dll!73839d72()
msvcr90.dll!737ffea2()
msvcr90.dll!737f2e2b()
msvcr90.dll!737ff33b()
msvcr90.dll!73800051()
msvcr90.dll!737f38c5()
pyrogenesis.exe!_onexit(int (void)* func) Line 121 + 0x5 bytes C
pyrogenesis.exe!atexit(void (void)* func) Line 127 + 0x8 bytes C
pyrogenesis.exe!__tmainCRTStartup() Line 583 + 0x17 bytes C
pyrogenesis.exe!CallStartupWithinTryBlock() Line 397 C++
kernel32.dll!75d5339a()
ntdll.dll!77db9ef2()
ntdll.dll!77db9ec5()
Here is the list of threads :
Unflagged > 6876 0 Main Thread main CSimulation2Impl::SerializationTestState::SerializationTestState Normal
Unflagged 6464 0 Worker Thread whrt_UpdateThread UpdateThread Normal
Unflagged 7576 0 Worker Thread CUserReportWorker SDL_SemWait Normal
Unflagged 2912 0 Worker Thread Win32 Thread 77da013d Normal
Unflagged 3432 0 Worker Thread Win32 Thread 77da1f26 Normal
Unflagged 6244 0 Worker Thread CCmpObstructionManager::TestStaticShape CCmpObstructionManager::TestStaticShape Normal
Unflagged 7636 0 Worker Thread Win32 Thread 77da1f26 Normal
Unflagged 6072 0 RPC Thread RPC Callback Thread 77d9fd71 Normal
Unflagged 5768 0 Worker Thread TextureConverter SDL_SemWait Normal
Unflagged 4724 0 Worker Thread Win32 Thread 77da013d Time Critical
Unflagged 2120 0 Worker Thread Win32 Thread 77da013d Normal
Unflagged 7784 0 Worker Thread Win32 Thread 77da013d Time Critical
Unflagged 6736 0 Worker Thread Win32 Thread 77da1dfe Normal
Unflagged 7920 0 Worker Thread Win32 Thread 77da013d -3
Unflagged 7036 0 Worker Thread Win32 Thread 77d9fd71 Normal
Unflagged 6428 0 Worker Thread Win32 Thread 77d9f939 Above Normal
Meanwhile I'll try to grab the code from SVN
----------------------------------------------
ok so I have downloaded, built and am running the game in the vc++ debugger. The game starts ok with the music and all. The first few times when I selected single player game and then Matches, the game was stuck at the Loading Map data dialog and I had to stop the process. It loaded the next screen now, so I ll try and reproduce the error in a fresh game.
ok tried to reload the crashing game and got this assertion failure :
Assertion failed: "0 && (L"CCmpDecay must not be used on non-local (network-synchronised) entities")"
Location: CCmpDecay.cpp:95 (CCmpDecay::Init)
Call stack:
CCmpDecay::Init (ccmpdecay.cpp:95)
this = (unavailable)
paramNode = 0x00000000
CCmpOverlayRenderer::Deserialize (ccmpoverlayrenderer.cpp:74)
this = (unavailable)
paramNode = 0x0032F144 ->
m_Value = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
m_Childs = (unsupported map<basic_string<char,char_traits<char> >,CParamNode >)
m_IsOk = true
m_ScriptVal =
m_Val =
px = 0x00000000
pn =
pi_ = 0x00000000
__formal = 0x0032F10C -> (IDeserializer)
CComponentManager::DeserializeState (componentmanagerserialization.cpp:319)
this = (unavailable)
stream = 0x0032F1E4 -> (basic_istream<char,char_traits<char> >)
rng = (unsupported basic_string<char,char_traits<char> >)
deserializer =
(IDeserializer)
m_ScriptBackrefs = (unsupported map<size_t,JSObject * >)
m_ScriptInterface = 0x106F8440 ->
m = (auto_ptr<scriptInterface_impl>)
m_Stream = 0x0032F1E4 (see above)
noParam =
m_Value = (unsupported basic_string<wchar_t,char_traits<wchar_t> >)
m_Childs = (unsupported map<basic_string<char,char_traits<char> >,CParamNode >)
m_IsOk = true
m_ScriptVal =
m_Val =
px = 0x00000000
pn =
pi_ = 0x00000000
numComponentTypes = 59 (0x0000003B)
i = 3 (0x00000003)
ctname = (unsupported basic_string<char,char_traits<char> >)
numComponents = 307 (0x00000133)
j = 200 (0x000000C8)
ent = 3922 (0x00000F52)
e = 0x6D381598 ->
(exception)
m_msg = 0x00000000
CGame::LoadInitialState (game.cpp:176)
this = (unavailable)
state = (unsupported basic_string<char,char_traits<char> >)
stream = (basic_stringstream<char,char_traits<char> >)
MemFunThunk<CGame> (loaderthunks.h:60)
param = 0x16972150
__formal = 0.01 (0x3F847AE147AE147B)
LDR_ProgressiveLoad (loader.cpp:228)
time_budget = 0.01 (0x3F847AE147AE147B)
des(no more room in buffer)
errno = 34 (No error reported here)
OS error = 487 (Attempt to access invalid address.)
--------------------------------------------------
The call stack for the crash :
user32.dll!76f1f5be()
[Frames below may be incorrect and/or missing, no symbols loaded for user32.dll]
user32.dll!76f1f5be()
user32.dll!76f1cd46()
user32.dll!76f1cf5c()
user32.dll!76f1ce8a()
user32.dll!76f1d009()
> pyrogenesis.exe!sys_display_error(const wchar_t * text, unsigned int flags) Line 315 + 0x13 bytes C++
pyrogenesis.exe!debug_DisplayError(const wchar_t * description, unsigned int flags, void * context, const wchar_t * lastFuncToSkip, const wchar_t * pathname, int line, const char * func, volatile int * suppress) Line 469 + 0x18 bytes C++
pyrogenesis.exe!debug_OnAssertionFailure(const wchar_t * expr, volatile int * suppress, const wchar_t * file, int line, const char * func) Line 558 + 0xa7 bytes C++
pyrogenesis.exe!CCmpDecay::Init(const CParamNode & paramNode) Line 95 + 0x1b bytes C++
pyrogenesis.exe!CCmpOverlayRenderer::Deserialize(const CParamNode & paramNode, IDeserializer & __formal) Line 74 C++
pyrogenesis.exe!CComponentManager::DeserializeState(std::basic_istream<char,std::char_traits<char> > & stream) Line 319 C++
pyrogenesis.exe!CGame::LoadInitialState() Line 176 C++
pyrogenesis.exe!MemFunThunk<CGame>(void * param, double __formal) Line 60 + 0xa bytes C++
pyrogenesis.exe!LDR_ProgressiveLoad(double time_budget, wchar_t * description, unsigned int max_chars, int * progress_percent) Line 228 + 0x11 bytes C++
pyrogenesis.exe!ProgressiveLoad() Line 232 + 0x25 bytes C++
pyrogenesis.exe!Frame() Line 344 C++
pyrogenesis.exe!RunGameOrAtlas(int argc, const char * * argv) Line 526 + 0x5 bytes C++
pyrogenesis.exe!main(int argc, char * * argv) Line 569 + 0xc bytes C++
pyrogenesis.exe!wmain(int argc, wchar_t * * argv) Line 380 + 0xa bytes C++
pyrogenesis.exe!__tmainCRTStartup() Line 552 + 0x17 bytes C
pyrogenesis.exe!CallStartupWithinTryBlock() Line 397 C++
kernel32.dll!75d5339a()
ntdll.dll!77db9ef2()
ntdll.dll!77db9ec5()
Edited by madmax, 23 April 2012 - 02:15 AM.