Module: kamailio
Branch: 4.3
Commit: f5d11d18f9d483c5fc731ff36f30fbbe1204f9ff
URL:
https://github.com/kamailio/kamailio/commit/f5d11d18f9d483c5fc731ff36f30fbb…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2015-07-14T14:56:35+02:00
core: proper cloning of xavp list with no-data type
- function used for cloning xavps stored in location record
- reported by Luca Mularoni
(cherry picked from commit 4efb386ebf47fc89446f57f2faf6f5cddfb7bff7)
---
Modified: xavp.c
---
Diff:
https://github.com/kamailio/kamailio/commit/f5d11d18f9d483c5fc731ff36f30fbb…
Patch:
https://github.com/kamailio/kamailio/commit/f5d11d18f9d483c5fc731ff36f30fbb…
---
diff --git a/xavp.c b/xavp.c
index a6c62e7..27a200f 100644
--- a/xavp.c
+++ b/xavp.c
@@ -641,6 +641,7 @@ sr_xavp_t *xavp_clone_level_nodata(sr_xavp_t *xold)
LM_ERR("cannot create cloned root xavp\n");
return NULL;
}
+ LM_DBG("cloned root xavp [%.*s]\n", xold->name.len, xold->name.s);
if(xold->val.type!=SR_XTYPE_XAVP)
{
@@ -667,15 +668,16 @@ sr_xavp_t *xavp_clone_level_nodata(sr_xavp_t *xold)
return NULL;
}
}
+ LM_DBG("cloned inner xavp [%.*s]\n", oavp->name.len, oavp->name.s);
if(xnew->val.v.xavp == NULL)
{
/* link to val in head xavp */
xnew->val.v.xavp = navp;
- pavp = navp;
} else {
/* link to prev xavp in the list */
pavp->next = navp;
}
+ pavp = navp;
}
oavp = oavp->next;
}