]> sjero.net Git - linphone/commitdiff
sal_register and sal_register_refresh returns -1 when exosip fails to build msg
authorPierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@linphone.org>
Fri, 10 Feb 2012 10:16:01 +0000 (11:16 +0100)
committerPierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@linphone.org>
Fri, 10 Feb 2012 10:16:01 +0000 (11:16 +0100)
coreapi/proxy.c
coreapi/sal_eXosip2.c
oRTP

index 6dc52e3c8178ec0ed833d30b80b9a918127ae13d..10400f5d2aabeac322f038b0d7c01abd86c375d7 100644 (file)
@@ -300,8 +300,9 @@ static void linphone_proxy_config_register(LinphoneProxyConfig *obj){
 **/
 void linphone_proxy_config_refresh_register(LinphoneProxyConfig *obj){
        if (obj->reg_sendregister && obj->op){
-               linphone_proxy_config_set_state(obj,LinphoneRegistrationProgress, "Refresh registration");
-               sal_register_refresh(obj->op,obj->expires);
+               if (sal_register_refresh(obj->op,obj->expires) == 0) {
+                       linphone_proxy_config_set_state(obj,LinphoneRegistrationProgress, "Refresh registration");
+               }
        }
 }
 
index 948e67d89e3acd074ad6333d23a29f8ca82a9571..ace208e1b7454015ce7387adc5cfaa1d261c4897 100644 (file)
@@ -2042,16 +2042,17 @@ int sal_register(SalOp *h, const char *proxy, const char *from, int expires){
                eXosip_register_build_register(h->rid,expires,&msg);
                sal_register_add_route(msg,proxy);
        }
-       eXosip_register_send_register(h->rid,msg);
+       if (msg)
+               eXosip_register_send_register(h->rid,msg);
        eXosip_unlock();
        h->expires=expires;
-       return 0;
+       return (msg != NULL) ? 0 : -1;
 }
 
 int sal_register_refresh(SalOp *op, int expires){
        osip_message_t *msg=NULL;
        const char *contact=sal_op_get_contact(op);
-       
+
        if (op->rid==-1){
                ms_error("Unexistant registration context, not possible to refresh.");
                return -1;
@@ -2064,7 +2065,7 @@ int sal_register_refresh(SalOp *op, int expires){
                eXosip_register_send_register(op->rid,msg);
        }else ms_error("Could not build REGISTER refresh message.");
        eXosip_unlock();
-       return 0;
+       return (msg != NULL) ? 0 : -1;
 }
 
 
diff --git a/oRTP b/oRTP
index 681e777d75b4e04f115034a5a90d3f27b99abe08..a936749fac4d3e2f788a0c03b3c4ea2021b3ae13 160000 (submodule)
--- a/oRTP
+++ b/oRTP
@@ -1 +1 @@
-Subproject commit 681e777d75b4e04f115034a5a90d3f27b99abe08
+Subproject commit a936749fac4d3e2f788a0c03b3c4ea2021b3ae13