Files
UnrealEngineUWP/Engine/Source/Developer/CrashDebugHelper
Patrick Laflamme 8da434bb8f Fixed hang (unexpected long time) in CrashReporterClient when processing the minidump to show the user the crash information. In somes cases, it could take several minutes (>15 minutes) leading the user to think that CRC hung or crashed.
The issue seems to appears randomly. It might be a DLL incompatibility, a memory stomp or a race condition, but when it happened, the system tried to search the Windows system modules images on the user disk, scanning all project assets for each module. The modules causing problems were the system ones like the ones from "C:\Windows\System32" or "C:\Program Files\Common Files" and the system was trying to find the images on D: drive, scanning several thousands of files. The issue could be observed with ProcessMonitor and looking at CRC process activity.

The faulty call was 'ReloadWide()'. Commenting it out fixed the issue and did not exhib any obvious regressions. Considering that we configured the MS debug engine to load symbols only when needed, forcing it to flush and reload all the symbols looked misplaced and counter-productive.

Tested CRC with the Editor in a dev environment.
Tested 'debug ensure' followed by 'debug crash'
Tested with a 'real' crash (access violation)
Tested CRC running in 'monitor mode' and in 'standalone mode'.

#rb Johan.Berg
#jira FROST-1416

[CL 15831144 by Patrick Laflamme in ue5-main branch]
2021-03-25 16:17:56 -04:00
..