Since updating to 4.8.3 the editor has been crashing when I try to show my plugin’s UI. Specifically, two of the fields in the UI load some data from a config file and display it. If there’s any changes, they write that data back out.
So when I load up the UI is hidden. At this point another bit of code which needs that data successfully loads the data from the config file.
When I try to show the UI however, it tries to read the config file again and crashes in ConfigCacheIni.cpp on line 1656.
First-chance exception at 0x000007FEDE99CE50 (UE4Editor-Core.dll) in UE4Editor.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.
FRemoteConfig::Get()->FinishRead(*Filename); // Ensure the remote file has been loaded and processed
At first I thought that the config file I was using was starting to get massive (around 260k) so I switched to a smaller one and pre-populated it with my settings, but nothing changed from the above outcome.
The code leading in to that…
FString Password; bool Success; Success = GConfig->GetString(TEXT("MYTHING"), TEXT("MyThingPassword"), Password, IniFile); if (Success) return Password;
The file exists, the content is there, the earlier config file read works, etc.
I thought one of the functions of GConfig->GetString() was that it was cached in memory, so you could keep calling it and not worry about building your own cache? Could multiple reads of the file be the problem?
Update: if I comment out the config write it stops crashing, but trying to write to the file also crashes. Getting frustrating.