Module: kamailio Branch: master Commit: dd0fd7011b750e34c595936b6c95759ccb77f786 URL: https://github.com/kamailio/kamailio/commit/dd0fd7011b750e34c595936b6c95759c...
Author: Daniel-Constantin Mierla miconda@gmail.com Committer: Daniel-Constantin Mierla miconda@gmail.com Date: 2015-09-18T09:33:20+02:00
htable: more checks of updateexpire when item is updated
---
Modified: modules/htable/ht_api.c
---
Diff: https://github.com/kamailio/kamailio/commit/dd0fd7011b750e34c595936b6c95759c... Patch: https://github.com/kamailio/kamailio/commit/dd0fd7011b750e34c595936b6c95759c...
---
diff --git a/modules/htable/ht_api.c b/modules/htable/ht_api.c index 1a77376..4e272cc 100644 --- a/modules/htable/ht_api.c +++ b/modules/htable/ht_api.c @@ -460,7 +460,10 @@ int ht_set_cell(ht_t *ht, str *name, int type, int_str *val, int mode) } cell->next = it->next; cell->prev = it->prev; - cell->expire = now + ht->htexpire; + if(ht->updateexpire) + cell->expire = now + ht->htexpire; + else + cell->expire = it->expire; if(it->prev) it->prev->next = cell; else @@ -489,7 +492,10 @@ int ht_set_cell(ht_t *ht, str *name, int type, int_str *val, int mode) if(mode) ht_slot_unlock(ht, idx); return -1; } - cell->expire = now + ht->htexpire; + if(ht->updateexpire) + cell->expire = now + ht->htexpire; + else + cell->expire = it->expire; cell->next = it->next; cell->prev = it->prev; if(it->prev) @@ -649,7 +655,8 @@ ht_cell_t* ht_cell_value_add(ht_t *ht, str *name, int val, int mode, return NULL; } else { it->value.n += val; - it->expire = now + ht->htexpire; + if(ht->updateexpire) + it->expire = now + ht->htexpire; if(old!=NULL) { if(old->msize>=it->msize)