coderespawn / dungeon-architect-ue4-issues

6 stars 0 forks source link

Oculus Rift 2: Crash [GetDoorFitConfiguration] #30

Open coderespawn opened 2 years ago

coderespawn commented 2 years ago

Crashes somewhere in here: SnapLib::FSnapGraphGenerator::GetDoorFitConfiguration

#00 pc 000000000c55d618 /data/app/com.xxx.xxx-z-gTD9txo1sJwq2QDJo9eQ==/lib/arm64/libUnreal.so!libUnreal.so (offset 0xb081000) (_ZN7SnapLib19FSnapGraphGenerator23GetDoorFitConfigurationE10TSharedPtrINS_11FModuleDoorEL7ESPMode1EES4_bR6TArrayIN2UE4Math10TTransformIdEE22TSizedDefaultAllocatorILi32EEE+27412) (BuildId: 9efe91e07e79a4ddccedbe5347ea4922a82c1aa3)
14:50:19.864

https://discord.com/channels/233207002463993857/234155775101108226/986391628468092990

Aj-Welltold commented 2 years ago

This crash occurs here.

`bool SnapLib::FSnapGraphGenerator::GetDoorFitConfiguration(SnapLib::FModuleDoorPtr RemoteDoor, SnapLib::FModuleDoorPtr DoorToFit, bool bAllowModuleRotation, TArray& OutNewTransforms) { if (!RemoteDoor.IsValid()) { // No incoming door. This is the first node in the graph OutNewTransforms = { FTransform::Identity }; return true; }

if (!CanConnectDoors(RemoteDoor, DoorToFit, bAllowModuleRotation)) {
    return false;
}

`

At the time of execution, we see GrowNode a few times in the stack trace, and when we get to the CanConnectDoors call, "this" is nullptr. It could potentially be getting garbage collected.

Additionally, we are seeing this crash in DebugGame configurations, but not in a Shipping build.

taylorwt commented 2 years ago

I did a follow-up test to make sure the issue wasn't with our content. I was able to reproduce this issue by loading the SnapDemo level and calling Build on the Dungeon actor. I got the same stack trace from the crash log using the demo content.