Merge branch 'bugfix/thread_and_dismiss' into 'develop'

Core defects fix

See merge request BPHV_MIPS/mvm_core!22
This commit is contained in:
Pan, Xinlei (Ryan) 2019-08-06 15:41:37 -04:00
commit f2b7973d77
2 changed files with 8 additions and 3 deletions

View File

@ -292,7 +292,8 @@
- (void)dismissTopViewControllerAnimated:(BOOL)animated delegate:(nullable NSObject<MVMCorePresentationDelegateProtocol>*)delegate completionHandler:(nullable void (^)(void))completionBlock {
// Dismiss on the main navigation controller.
MVMCoreDismissViewControllerOperation *operation = [[MVMCoreDismissViewControllerOperation alloc] initAndDismissTopViewController:self.navigationController animated:animated];
UIViewController *controllerToPresentOn = self.viewControllerToPresentOn ?: [UIApplication sharedApplication].keyWindow.rootViewController;
MVMCoreDismissViewControllerOperation *operation = [[MVMCoreDismissViewControllerOperation alloc] initAndDismissTopViewController:controllerToPresentOn animated:animated];
operation.completionBlock = completionBlock;
[[NSOperationQueue mainQueue] addOperation:operation];
}
@ -307,7 +308,8 @@
- (void)dismissToBottom:(BOOL)animated delegate:(nullable NSObject<MVMCorePresentationDelegateProtocol>*)delegate completionHandler:(nullable void (^)(void))completionBlock {
// Dismiss on the main navigation controller.
MVMCoreDismissViewControllerOperation *operation = [[MVMCoreDismissViewControllerOperation alloc] initAndDismissViewController:self.navigationController animated:animated];
UIViewController *controllerToPresentOn = self.viewControllerToPresentOn ?: [UIApplication sharedApplication].keyWindow.rootViewController;
MVMCoreDismissViewControllerOperation *operation = [[MVMCoreDismissViewControllerOperation alloc] initAndDismissViewController:controllerToPresentOn animated:animated];
operation.completionBlock = completionBlock;
[[NSOperationQueue mainQueue] addOperation:operation];
}

View File

@ -13,6 +13,7 @@
#import "NSDictionary+MFConvenience.h"
#import "MVMCoreJSONConstants.h"
#import "MVMCoreHardcodedStringsConstants.h"
#import "MVMCoreDispatchUtility.h"
@implementation MVMCoreErrorObject
@ -26,7 +27,9 @@
self.domain = domain;
self.location = location;
self.date = [NSDate date];
self.applicationState = [UIApplication sharedApplication].applicationState;
[MVMCoreDispatchUtility performSyncBlockOnMainThread:^{
self.applicationState = [UIApplication sharedApplication].applicationState;
}];
// We don't log server errors.
if (![domain isEqualToString:ErrorDomainServer]) {