mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-01-18 11:38:08 +00:00
fix crash when ommiting sip:
reverse call logs.
This commit is contained in:
parent
a890902d75
commit
40a8d31ab2
3 changed files with 25 additions and 8 deletions
1
NEWS
1
NEWS
|
|
@ -3,6 +3,7 @@ linphone-3.2.2 -- ?????????
|
|||
* allow speex to run with vbr (variable bit rate) mode
|
||||
* add speex/32000 (ultra wide band speex codec)
|
||||
* answer empty SIP INFO requests
|
||||
* reverse order of call logs
|
||||
|
||||
linphone-3.2.1 -- October 5, 2009
|
||||
* improve graphics and behaviour of mute button
|
||||
|
|
|
|||
|
|
@ -270,10 +270,14 @@ void linphone_call_log_completed(LinphoneCallLog *calllog, LinphoneCall *call){
|
|||
calllog->status=LinphoneCallSuccess;
|
||||
break;
|
||||
}
|
||||
lc->call_logs=ms_list_append(lc->call_logs,(void *)calllog);
|
||||
lc->call_logs=ms_list_prepend(lc->call_logs,(void *)calllog);
|
||||
if (ms_list_size(lc->call_logs)>lc->max_call_logs){
|
||||
MSList *elem;
|
||||
elem=lc->call_logs;
|
||||
MSList *elem,*prevelem=NULL;
|
||||
/*find the last element*/
|
||||
for(elem=lc->call_logs;elem!=NULL;elem=elem->next){
|
||||
prevelem=elem;
|
||||
}
|
||||
elem=prevelem;
|
||||
linphone_call_log_destroy((LinphoneCallLog*)elem->data);
|
||||
lc->call_logs=ms_list_remove_link(lc->call_logs,elem);
|
||||
}
|
||||
|
|
@ -1621,9 +1625,11 @@ bool_t linphone_core_interpret_url(LinphoneCore *lc, const char *url, LinphoneAd
|
|||
enum_lookup_res_t *enumres=NULL;
|
||||
osip_to_t *parsed_url=NULL;
|
||||
char *enum_domain=NULL;
|
||||
LinphoneProxyConfig *proxy;
|
||||
LinphoneProxyConfig *proxy=lc->default_proxy;;
|
||||
char *tmpurl;
|
||||
const char *tmproute;
|
||||
LinphoneAddress *uri;
|
||||
|
||||
if (real_parsed_url!=NULL) *real_parsed_url=NULL;
|
||||
*route=NULL;
|
||||
tmproute=linphone_core_get_route(lc);
|
||||
|
|
@ -1645,10 +1651,19 @@ bool_t linphone_core_interpret_url(LinphoneCore *lc, const char *url, LinphoneAd
|
|||
/* check if we have a "sip:" */
|
||||
if (strstr(url,"sip:")==NULL){
|
||||
/* this doesn't look like a true sip uri */
|
||||
proxy=lc->default_proxy;
|
||||
if (strchr(url,'@')!=NULL){
|
||||
/* seems like sip: is missing !*/
|
||||
tmpurl=ms_strdup_printf("sip:%s",url);
|
||||
uri=linphone_address_new(tmpurl);
|
||||
ms_free(tmpurl);
|
||||
if (uri){
|
||||
if (real_parsed_url!=NULL) *real_parsed_url=uri;
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
if (proxy!=NULL){
|
||||
/* append the proxy domain suffix */
|
||||
LinphoneAddress *uri;
|
||||
const char *identity=linphone_proxy_config_get_identity(proxy);
|
||||
char normalized_username[128];
|
||||
uri=linphone_address_new(identity);
|
||||
|
|
@ -1683,7 +1698,7 @@ bool_t linphone_core_interpret_url(LinphoneCore *lc, const char *url, LinphoneAd
|
|||
if (tmproute) *route=ms_strdup(tmproute);
|
||||
#endif
|
||||
return TRUE;
|
||||
}
|
||||
}else return FALSE;
|
||||
}
|
||||
parsed_url=linphone_address_new(url);
|
||||
if (parsed_url!=NULL){
|
||||
|
|
@ -1703,7 +1718,7 @@ bool_t linphone_core_interpret_url(LinphoneCore *lc, const char *url, LinphoneAd
|
|||
/**
|
||||
* Returns the default identity SIP address.
|
||||
*
|
||||
* @ingroup proxies
|
||||
* @ingroup proxiesb
|
||||
* This is an helper function:
|
||||
*
|
||||
* If no default proxy is set, this will return the primary contact (
|
||||
|
|
|
|||
|
|
@ -627,6 +627,7 @@ static gboolean linphone_gtk_start_call_do(GtkWidget *uri_bar){
|
|||
if (linphone_core_invite(linphone_gtk_get_core(),entered)==0) {
|
||||
completion_add_text(GTK_ENTRY(uri_bar),entered);
|
||||
}else{
|
||||
linphone_gtk_call_terminated(NULL);
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue