diff --git a/Classes/LinphoneCoreSettingsStore.m b/Classes/LinphoneCoreSettingsStore.m index a963bb6c4..b3eb2ff30 100644 --- a/Classes/LinphoneCoreSettingsStore.m +++ b/Classes/LinphoneCoreSettingsStore.m @@ -102,7 +102,7 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); [self setString: linphone_address_get_username(addr) forKey:@"username_preference"]; [self setString: linphone_address_get_domain(addr) forKey:@"domain_preference"]; - [self setInteger: linphone_proxy_config_get_expires(cfg) forKey:@"expire_preference"]; + [self setInteger: lp_config_get_int(linphone_core_get_config(lc),"app","default_expires",3600) forKey:@"expire_preference"]; [self setString:linphone_proxy_config_get_dial_prefix(cfg) forKey:@"prefix_preference"]; if (strcmp(linphone_address_get_domain(addr),linphone_address_get_domain(proxy_addr))!=0 || port!=NULL){ @@ -352,19 +352,17 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); linphone_proxy_config_set_identity(proxyCfg,identity); linphone_proxy_config_set_server_addr(proxyCfg,proxy); linphone_proxy_config_enable_register(proxyCfg,true); + + + int expire = [self integerForKey:@"expire_preference"]; + lp_config_set_int(linphone_core_get_config(lc),"app","default_expires",expire); + BOOL isWifiOnly = [self boolForKey:@"wifi_only_preference"]; if (isWifiOnly && lLinphoneMgr.connectivity == wwan) { linphone_proxy_config_expires(proxyCfg, 0); } else { - if ([self objectForKey:@"expire_preference"]) { - int expire = [self integerForKey:@"expire_preference"]; - /*if(expire < lLinphoneMgr.defaultExpires) - expire = lLinphoneMgr.defaultExpires;*/ - linphone_proxy_config_expires(proxyCfg, expire); - } - //else not set - + linphone_proxy_config_expires(proxyCfg,expire); } if (isOutboundProxy) diff --git a/Classes/LinphoneManager.h b/Classes/LinphoneManager.h index cea4de9d7..7e9bbea89 100644 --- a/Classes/LinphoneManager.h +++ b/Classes/LinphoneManager.h @@ -126,7 +126,6 @@ typedef struct _LinphoneManagerSounds { @property (nonatomic, retain) id settingsStore; @property (readonly) FastAddressBook* fastAddressBook; @property Connectivity connectivity; -@property (nonatomic) int defaultExpires; @property (readonly) const char* frontCamId; @property (readonly) const char* backCamId; @property (readonly) sqlite3* database; diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index 99e103af9..a2e2a5739 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -73,7 +73,6 @@ extern void libmsbcg729_init(); @synthesize connectivity; @synthesize frontCamId; @synthesize backCamId; -@synthesize defaultExpires; @synthesize settingsStore; @synthesize database; @synthesize fastAddressBook; @@ -203,7 +202,6 @@ struct codec_name_pref_table codec_pref_table[]={ logs = [[NSMutableArray alloc] init]; database = NULL; settingsStore = nil; - self.defaultExpires = 600; [self openDatabase]; [self copyDefaultSettings]; lastRemoteNotificationTime=0; @@ -506,7 +504,7 @@ void networkReachabilityCallBack(SCNetworkReachabilityRef target, SCNetworkReach && (lLinphoneMgr.connectivity == newConnectivity || lLinphoneMgr.connectivity == none)) { linphone_proxy_config_expires(proxy, 0); } else if (proxy){ - linphone_proxy_config_expires(proxy, lLinphoneMgr.defaultExpires); //might be better to save the previous value + linphone_proxy_config_expires(proxy, lp_config_get_int(linphone_core_get_config([LinphoneManager getLc]),"app","default_expires",3600)); } if (lLinphoneMgr.connectivity != newConnectivity) { diff --git a/submodules/externals/exosip b/submodules/externals/exosip index b62c41677..cabb39c79 160000 --- a/submodules/externals/exosip +++ b/submodules/externals/exosip @@ -1 +1 @@ -Subproject commit b62c4167702f5333686754f55a2da81705e170ba +Subproject commit cabb39c79560ab11c3dc668ce9d5fee8ea19e832