From f81b7e13373da2dcf4e006ccfc387784f1bfc1ca Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Tue, 14 Oct 2014 19:41:19 +0200 Subject: [PATCH] Possible fix for first boot error --- Classes/LinphoneAppDelegate.m | 13 +++---------- Classes/PhoneMainView.m | 5 +++++ 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/Classes/LinphoneAppDelegate.m b/Classes/LinphoneAppDelegate.m index 3b418cec7..4b5004e3b 100644 --- a/Classes/LinphoneAppDelegate.m +++ b/Classes/LinphoneAppDelegate.m @@ -170,7 +170,7 @@ - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { - + UIApplication* app= [UIApplication sharedApplication]; if( [app respondsToSelector:@selector(registerUserNotificationSettings:)] ){ @@ -225,15 +225,8 @@ [[LinphoneManager instance] startLibLinphone]; } if([LinphoneManager isLcReady]) { - - - // Only execute one time at application start - if(!started) { - started = TRUE; - [self.window makeKeyAndVisible]; - [RootViewManager setupWithPortrait:(PhoneMainView*)self.window.rootViewController]; - [[PhoneMainView instance] startUp]; - } + [self.window makeKeyAndVisible]; + [[PhoneMainView instance] startUp]; } } diff --git a/Classes/PhoneMainView.m b/Classes/PhoneMainView.m index d5b78c37e..49374cfbc 100644 --- a/Classes/PhoneMainView.m +++ b/Classes/PhoneMainView.m @@ -54,6 +54,11 @@ static RootViewManager* rootViewManagerInstance = nil; } + (RootViewManager *)instance { + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + PhoneMainView* portrait = (PhoneMainView*)[(LinphoneAppDelegate*)([UIApplication sharedApplication].delegate) window].rootViewController; + rootViewManagerInstance =[[RootViewManager alloc]initWithPortrait:portrait]; + }); if( !rootViewManagerInstance ){ @throw [NSException exceptionWithName:@"RootViewManager" reason:@"nil instance" userInfo:nil]; }