Module: kamailio
Branch: master
Commit: 4efb386ebf47fc89446f57f2faf6f5cddfb7bff7
URL:
https://github.com/kamailio/kamailio/commit/4efb386ebf47fc89446f57f2faf6f5c…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2015-07-14T14:54:31+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
---
Modified: xavp.c
---
Diff:
https://github.com/kamailio/kamailio/commit/4efb386ebf47fc89446f57f2faf6f5c…
Patch:
https://github.com/kamailio/kamailio/commit/4efb386ebf47fc89446f57f2faf6f5c…
---
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;
}