Skip to content

Intermittent crash in Multiplayer Sample #51

Description

@mbalfour-amzn

When running the MultiplayerSample GameLauncher client in the development branch, I get intermittent crashes with the following callstack:

>	PopcornFX.dll!PopcornFX::_ExpandAndInterpolatePayload_0x0C_f32x3(const void * srcPtrA, const void * srcPtrB, const void * srcPtrAd, const void * srcPtrBd, const PopcornFX::TMemoryView<unsigned int const> & cacheParentId, const PopcornFX::TMemoryView<float const> & cacheCursors, void * curPayloadPtr, unsigned int count, const PopcornFX::SPayloadElementView::ELerpSemantic payloadLerpSemantic) Line 696	C++
 	PopcornFX.dll!PopcornFX::CParticleTask_KickEvent::_VirtualLaunch(PopcornFX::Threads::SThreadContext & threadContext) Line 1441	C++
 	PopcornFX.dll!PopcornFX::CAsynchronousJob::_LaunchReady(PopcornFX::Threads::SThreadContext & threadContext) Line 232	C++
 	PopcornFX.dll!PopcornFX::CWorkerThread::Run() Line 123	C++
 	PopcornFX.dll!PopcornFX::CThread::ThreadStartAddress(void * param) Line 643	C++

The specific crash in this example is: Exception thrown at 0x00007FFB383355D8 (PopcornFX.dll) in MultiplayerSample.GameLauncher.exe: 0xC0000005: Access violation reading location 0x000001C45345C740.

Here are all of the local variables available in VS at the point of the crash:

<title>Document</title>
  Name Value Type
cacheCursors {m_Data=0x000000a71e7ff410 "\x14\x1" m_Count=0x0000007c } const PopcornFX::TMemoryView &
  ▶ m_Data 0x000000a71e7ff410 "\x14\x1" const unsigned char *
  m_Count 0x0000007c unsigned int
cacheParentId {m_Data=0x000000a71e7ff610 "0ü�\x1e§" m_Count=0x0000007c } const PopcornFX::TMemoryView &
  ▶ m_Data 0x000000a71e7ff610 "0ü�\x1e§" const unsigned char *
  m_Count 0x0000007c unsigned int
  count 0x0000000c unsigned int
  curPayloadPtr 0x000001c30eb63840 void *
  f Variable is optimized away and not available.  
  payloadLerpSemantic LerpSemantic_Linear (0x00000001) PopcornFX::SPayloadElementView::ELerpSemantic
  srcPtrA 0x000001c2e545f440 const void *
  srcPtrAd Variable is optimized away and not available.  
  srcPtrB 0x000001c2e545f500 const void *
  srcPtrBd Variable is optimized away and not available.  

There are several asserts in _VirtualLaunch when running with a debug build, it's possible this crash is related to those asserts.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions