[linphone] Update to 0.0.2

nucleo nucleo at fedoraproject.org
Thu Mar 1 16:53:34 UTC 2012


commit 1c1c09d41c92e9d1222c6db951eabb824ce6edaa
Author: nucleo <nucleo at fedoraproject.org>
Date:   Thu Mar 1 18:53:31 2012 +0200

    Update to 0.0.2

 linphone-3.5.2-regression.patch |  125 +++++++++++++++++++++++++++++++++++++++
 linphone.spec                   |   40 ++++++++-----
 2 files changed, 149 insertions(+), 16 deletions(-)
---
diff --git a/linphone-3.5.2-regression.patch b/linphone-3.5.2-regression.patch
new file mode 100644
index 0000000..dc0b58f
--- /dev/null
+++ b/linphone-3.5.2-regression.patch
@@ -0,0 +1,125 @@
+diff --git a/coreapi/linphonecall.c b/coreapi/linphonecall.c
+index 31c9cbf..1567221 100644
+--- a/coreapi/linphonecall.c
++++ b/coreapi/linphonecall.c
+@@ -350,7 +350,7 @@ LinphoneCall * linphone_call_new_incoming(LinphoneCore *lc, LinphoneAddress *fro
+ 		 we get a chance to discover our nat'd address before answering.*/
+ 		call->ping_op=sal_op_new(lc->sal);
+ 		from_str=linphone_address_as_string_uri_only(from);
+-		sal_op_set_route(call->ping_op,sal_op_get_network_origin(op));
++		sal_op_set_route(call->ping_op,sal_op_get_network_origin(call->op));
+ 		sal_op_set_user_pointer(call->ping_op,call);
+ 		sal_ping(call->ping_op,linphone_core_find_best_identity(lc,from,NULL),from_str);
+ 		ms_free(from_str);
+diff --git a/coreapi/linphonecore.c b/coreapi/linphonecore.c
+index 4fd6c6a..ebdb615 100644
+--- a/coreapi/linphonecore.c
++++ b/coreapi/linphonecore.c
+@@ -1630,17 +1630,18 @@ static void monitor_network_state(LinphoneCore *lc, time_t curtime){
+ }
+ 
+ static void proxy_update(LinphoneCore *lc){
+-	MSList *elem,*next;
+ 	ms_list_for_each(lc->sip_conf.proxies,(void (*)(void*))&linphone_proxy_config_update);
+-	for(elem=lc->sip_conf.deleted_proxies;elem!=NULL;elem=next){
+-		LinphoneProxyConfig* cfg = (LinphoneProxyConfig*)elem->data;
+-		next=elem->next;
++	MSList* list=ms_list_copy(lc->sip_conf.deleted_proxies);
++	MSList* copy=list;
++	for(;list!=NULL;list=list->next){
++		LinphoneProxyConfig* cfg = (LinphoneProxyConfig*) list->data;
+ 		if (ms_time(NULL) - cfg->deletion_date > 5) {
+-			lc->sip_conf.deleted_proxies =ms_list_remove_link(lc->sip_conf.deleted_proxies,elem);
++			lc->sip_conf.deleted_proxies =ms_list_remove(lc->sip_conf.deleted_proxies,(void *)cfg);
+ 			ms_message("clearing proxy config for [%s]",linphone_proxy_config_get_addr(cfg));
+ 			linphone_proxy_config_destroy(cfg);
+ 		}
+ 	}
++	ms_list_free(copy);
+ }
+ 
+ static void assign_buddy_info(LinphoneCore *lc, BuddyInfo *info){
+diff --git a/coreapi/proxy.c b/coreapi/proxy.c
+index a01f1ff..10400f5 100644
+--- a/coreapi/proxy.c
++++ b/coreapi/proxy.c
+@@ -172,20 +172,16 @@ int linphone_proxy_config_set_route(LinphoneProxyConfig *obj, const char *route)
+ 		obj->reg_route=NULL;
+ 	}
+ 	if (route!=NULL){
+-		SalAddress *addr;
+-		char *tmp;
++		LinphoneAddress *addr;
+ 		/*try to prepend 'sip:' */
+ 		if (strstr(route,"sip:")==NULL){
+-			tmp=ms_strdup_printf("sip:%s",route);
+-		}else tmp=ms_strdup(route);
+-		addr=sal_address_new(tmp);
+-		if (addr!=NULL){
+-			sal_address_destroy(addr);
+-		}else{
+-			ms_free(tmp);
+-			tmp=NULL;
+-		}
+-		obj->reg_route=tmp;
++			obj->reg_route=ms_strdup_printf("sip:%s",route);
++		}else obj->reg_route=ms_strdup(route);
++		addr=linphone_address_new(obj->reg_route);
++		if (addr==NULL){
++			ms_free(obj->reg_route);
++			obj->reg_route=NULL;
++		}else linphone_address_destroy(addr);
+ 	}
+ 	return 0;
+ }
+@@ -520,9 +516,11 @@ struct _LinphoneCore * linphone_proxy_config_get_core(const LinphoneProxyConfig
+ **/
+ int linphone_core_add_proxy_config(LinphoneCore *lc, LinphoneProxyConfig *cfg){
+ 	if (!linphone_proxy_config_check(lc,cfg)) {
++		linphone_proxy_config_destroy(cfg);
+ 		return -1;
+ 	}
+ 	if (ms_list_find(lc->sip_conf.proxies,cfg)!=NULL){
++		linphone_proxy_config_destroy(cfg);
+ 		ms_warning("ProxyConfig already entered, ignored.");
+ 		return 0;
+ 	}
+diff --git a/coreapi/sal_eXosip2.c b/coreapi/sal_eXosip2.c
+index 1c7fd5b..ace208e 100644
+--- a/coreapi/sal_eXosip2.c
++++ b/coreapi/sal_eXosip2.c
+@@ -717,8 +717,8 @@ int sal_ping(SalOp *op, const char *from, const char *to){
+ 	
+ 	sal_op_set_from(op,from);
+ 	sal_op_set_to(op,to);
+-	sal_exosip_fix_route(op);
+ 
++	/*bug here: eXosip2 does not honor the route argument*/
+ 	eXosip_options_build_request (&options, sal_op_get_to(op),
+ 			sal_op_get_from(op),sal_op_get_route(op));
+ 	if (options){
+@@ -2216,10 +2216,10 @@ void sal_address_set_param(SalAddress *u,const char* name,const char* value) {
+ 	osip_uri_param_t *param=NULL;
+     osip_uri_uparam_get_byname(((osip_from_t*)u)->url,(char*)name,&param);
+     if (param == NULL){
+-        osip_uri_uparam_add	(((osip_from_t*)u)->url,ms_strdup(name),value ? ms_strdup(value) : NULL);
++        osip_uri_uparam_add	(((osip_from_t*)u)->url,ms_strdup(name),ms_strdup(value));
+     } else {
+         osip_free(param->gvalue);
+-        param->gvalue=value ? osip_strdup(value) : NULL;
++        param->gvalue=osip_strdup(value);
+     }
+     
+ }
+diff --git a/coreapi/sal_eXosip2_presence.c b/coreapi/sal_eXosip2_presence.c
+index f79866a..4a18c46 100644
+--- a/coreapi/sal_eXosip2_presence.c
++++ b/coreapi/sal_eXosip2_presence.c
+@@ -92,7 +92,6 @@ int sal_text_send(SalOp *op, const char *from, const char *to, const char *msg){
+ 		if (to)
+ 			sal_op_set_to(op,to);
+ 
+-		sal_exosip_fix_route(op);
+ 		eXosip_lock();
+ 		eXosip_message_build_request(&sip,"MESSAGE",sal_op_get_to(op),
+ 			sal_op_get_from(op),sal_op_get_route(op));
diff --git a/linphone.spec b/linphone.spec
index bc6c50c..7636e3c 100644
--- a/linphone.spec
+++ b/linphone.spec
@@ -2,16 +2,22 @@
 
 Name:           linphone
 Version:        3.5.2
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        Phone anywhere in the whole world by using the Internet
 
 Group:          Applications/Communications
 License:        GPLv2+
 URL:            http://www.linphone.org/
 
-Source0:        http://download.savannah.gnu.org/releases/linphone/3.4.x/sources/%{name}-%{version}.tar.gz
+Source0:        http://download.savannah.gnu.org/releases/linphone/3.5.x/sources/%{name}-%{version}.tar.gz
 Patch0:         linphone-3.5.1-unusedvar.patch
-Patch1:         linphone-3.5.1-glib-2.31.patch
+
+# commit d1d6ab83af4152f9fb719d885a2de20bddcfa96a
+# Allow building against glib 2.31 and later
+Patch1:         linphone-3.5.2-glib-2.31.patch
+
+# revert commit 2a5c2296ba555c1401267a4544507e2c6239622e causing regression in 3.5.2
+Patch2:         linphone-3.5.2-regression.patch
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
@@ -45,6 +51,7 @@ BuildRequires:  perl(XML::Parser)
 BuildRequires:  libglade2-devel
 
 BuildRequires:  intltool
+BuildRequires:  doxygen
 
 BuildRequires:  ortp-devel >= 1:0.20.0
 Requires:       ortp%{?_isa} >= 1:0.20.0
@@ -76,18 +83,8 @@ Libraries and headers required to develop software with linphone.
 %prep
 %setup0 -q
 %patch0 -p1 -b .unusedvar
-
-%if 0%{?fedora} > 16
 %patch1 -p1 -b .glib-2.31
-%endif
-
-
-# g_thread_init has been deprecated since version 2.32 and should not be used in newly-written code.
-# This function is no longer necessary. The GLib threading system is automatically initialized at
-# the start of your program.
-%if 0%{?fedora} >= 17
-sed -i '/g_thread_init/d' gtk/main.c
-%endif
+%patch2 -p1 -b .regression
 
 # remove bundled oRTP
 rm -rf oRTP
@@ -139,7 +136,13 @@ desktop-file-install --vendor=fedora \
   --add-category Telephony \
   --add-category GTK \
   $RPM_BUILD_ROOT%{_datadir}/applications/%{name}.desktop
-rm -f %{buildroot}%{_libdir}/*.la
+
+rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
+
+# move docs to %%doc
+mkdir -p doc/linphone doc/mediastreamer
+mv $RPM_BUILD_ROOT%{_datadir}/doc/linphone/linphone*/html doc/linphone
+mv $RPM_BUILD_ROOT%{_datadir}/doc/mediastreamer/mediastreamer*/html doc/mediastreamer
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -168,7 +171,7 @@ rm -rf $RPM_BUILD_ROOT
 
 %files devel
 %defattr(-,root,root)
-%exclude %{_datadir}/tutorials
+%doc doc/linphone doc/mediastreamer
 %{_includedir}/linphone
 %{_includedir}/mediastreamer2
 %{_libdir}/liblinphone.so
@@ -177,6 +180,11 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/pkgconfig/mediastreamer.pc
 
 %changelog
+* Mon Feb 27 2012 Alexey Kurov <nucleo at fedoraproject.org> - 3.5.2-2
+- install docs in -devel
+- update glib-2.31 patch
+- revert commit causing regression in 3.5.2
+
 * Wed Feb 22 2012 Alexey Kurov <nucleo at fedoraproject.org> - 3.5.2-1
 - linphone-3.5.2
 


More information about the scm-commits mailing list