No announcement yet.

Crash log warning question

  • Filter
  • Time
  • Show
Clear All
new posts

    Crash log warning question

    Hey guys, could use a set of eyes,

    Our packaged project has been crashing sometimes on level load. The shipping build is more stable than development build but still crashes. The editor never crashes, and cooking/packaging show 0 warnings/errors.

    When it crashes, the logs say:
    1. LogInit: Display: Starting Game.
    2. LogNet: Browse: /Game/Maps/Entry?Name=Player
    3. LogLoad: LoadMap: /Game/Maps/Entry?Name=Player
    4. LogWindows: Warning: CreateProc failed: The system cannot find the file specified. (0x00000002)
    5. LogWindows: Warning: URL: ../../../...

    When it doesn't, they say:
    1. LogInit: Display: Starting Game.
    2. LogNet: Browse: /Game/Maps/Entry?Name=Player
    3. LogLoad: LoadMap: /Game/Maps/Entry?Name=Player
    4. LogAIModule: Creating AISystem for world Entry
    5. LogLoad: Game class is 'ThirdPersonGameMode_C'
    6. LogWorld: Bringing World /Game/Maps/Entry.Entry up for play (max tick rate 0) at 2018.07.31-03.19.18
    7. LogWorld: Bringing up level for play took: 0.001861...

    Any help would be greatly appreciated.


    I solved the issue and hope this message helps someone in the future. I had crashes only in packaged builds (never editor) with the following log error:

    Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address ...

    Warning: CreateProc failed: The system cannot find the file specified.
    Experienced devs told me 99% of the time it's a null pointer error, meaning you are referencing something in your c++ or blueprints which can't be referenced (usually because it doesn't exist, for example it hasn't yet been instantiated). This was true in my case.

    The way to solve this issue:

    1) Look in your log folder. ([yourprojectname]>Saved>Crashes). Look for the FATAL ERROR near the end and look underneath that for the callstack hint which will steer you where your problem is. In my case, it looked like this:

    [2018.07.30-19.19.53:720][ 0]LogWindows: Error: Fatal error!
    [2018.07.30-19.19.53:720][ 0]LogWindows: Error:
    [2018.07.30-19.19.53:720][ 0]LogWindows: Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0xfad70000
    [2018.07.30-19.19.53:720][ 0]LogWindows: Error:
    [2018.07.30-19.19.53:720][ 0]LogWindows: Error: [Callstack] 0x00007ff716532680
    AAADragonFresh.exe!AlgoImpl::IntroSortInternal<TBitArray<FDefaultBitArrayAllocator>,FIdentityFunctor,TDereferenceWrapper<TBitArray<FDefaultBitArrayAllocator>,TGreater<TBitArray<FDefaultBitArrayAllocator> > > >() []
    [2018.07.30-19.19.53:720][ 0]LogWindows: Error: [Callstack] 0x00007ff7165ca3b9 AAADragonFresh.exe!FSkeletalMeshLODRenderData::InitResources() []
    Notice the last message in mine. It contains the words "skeletalMesh", "sort", "TBitArray". In my case, the null pointer was a reference to a skeletal mesh inside of a switch.

    2) Go into a blueprint you think the log could be referring to and disconnect the tick, begin play, and constructor wires, effectively deactivating the blueprint, and then package and run. If it stops crashing, you've found the blueprint with your toxic reference. You're zeroing in!

    3) Reconnect your wires and disconnect only the part you think is responsible until the packaged build stops crashing. Find your bad reference, and then figure out why it's a bad reference. Have you instantiated it yet? (You can put in printstrings, or you can put in breakpoints and step through your blueprints to find out). In my case, it was something stranger which really threw me off: I had imported the mesh from Blender with the skeleton turned to invisible. This was enough to throw off ue4, but only when ue4 was trying to load it (hence why only the crashes in packaged builds).

    The first time debugging something like this is hell, but have faith that you can and will get through it, and once you do, you'll have tremendous confidence moving forward!