diff --git a/src/modules/pv/pv_trans.c b/src/modules/pv/pv_trans.c index dfc842aac17..b95ffd135c5 100644 --- a/src/modules/pv/pv_trans.c +++ b/src/modules/pv/pv_trans.c @@ -838,6 +838,7 @@ int tr_eval_string(struct sip_msg *msg, tr_param_t *tp, int subtype, if(!(val->flags&PV_VAL_STR)) val->rs.s = int2str(val->ri, &val->rs.len); + /* Set maximum prefix length */ max = val->rs.len; if(tp!=NULL) { @@ -876,7 +877,7 @@ int tr_eval_string(struct sip_msg *msg, tr_param_t *tp, int subtype, memset(val, 0, sizeof(pv_value_t)); val->flags = PV_VAL_STR; val->rs.s = _tr_buffer; - val->rs.len = j-1; + val->rs.len = (j>0)?(j-1):0; break;