diff --git a/Crashlytics/CHANGELOG.md b/Crashlytics/CHANGELOG.md index 5f1d6c961df..756254ae255 100644 --- a/Crashlytics/CHANGELOG.md +++ b/Crashlytics/CHANGELOG.md @@ -1,3 +1,8 @@ +# Unreleased +- [fixed] Installed Crashlytics signal and mach exception handlers synchronously to + improve compatibility with other crash reporters and runtime environments (like + Mono/Xamarin). (#15383) + # 12.4.0 - [fixed] Make set development platform APIs to chain on Crashlytics context init promise. diff --git a/Crashlytics/Crashlytics/Components/FIRCLSContext.m b/Crashlytics/Crashlytics/Components/FIRCLSContext.m index 3242a08e884..b34f98362ba 100644 --- a/Crashlytics/Crashlytics/Components/FIRCLSContext.m +++ b/Crashlytics/Crashlytics/Components/FIRCLSContext.m @@ -172,21 +172,17 @@ // simulator to crash. if (!_firclsContext.readonly->debuggerAttached) { #if CLS_SIGNAL_SUPPORTED - dispatch_group_async(group, queue, ^{ - _firclsContext.readonly->signal.path = - FIRCLSContextAppendToRoot(rootPath, FIRCLSReportSignalFile); + _firclsContext.readonly->signal.path = + FIRCLSContextAppendToRoot(rootPath, FIRCLSReportSignalFile); - FIRCLSSignalInitialize(&_firclsContext.readonly->signal); - }); + FIRCLSSignalInitialize(&_firclsContext.readonly->signal); #endif #if CLS_MACH_EXCEPTION_SUPPORTED - dispatch_group_async(group, queue, ^{ - _firclsContext.readonly->machException.path = - FIRCLSContextAppendToRoot(rootPath, FIRCLSReportMachExceptionFile); + _firclsContext.readonly->machException.path = + FIRCLSContextAppendToRoot(rootPath, FIRCLSReportMachExceptionFile); - FIRCLSMachExceptionInit(&_firclsContext.readonly->machException); - }); + FIRCLSMachExceptionInit(&_firclsContext.readonly->machException); #endif dispatch_group_async(group, queue, ^{