From f5d11d18f9d483c5fc731ff36f30fbbe1204f9ff Mon Sep 17 00:00:00 2001 From: Daniel-Constantin Mierla Date: Tue, 14 Jul 2015 14:54:31 +0200 Subject: [PATCH] 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) --- xavp.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/xavp.c b/xavp.c index a6c62e73012..27a200fbfbe 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; }