diff options
author | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-12-29 07:50:15 +0000 |
---|---|---|
committer | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2004-12-29 07:50:15 +0000 |
commit | 81a86946b8ee7b9606a53952b45355f61161cbf5 (patch) | |
tree | fe102087d96c9b25bf2a9346ec2e1779682234dd /include | |
parent | 63b86b9f8029d79709af21f382513d86433724b6 (diff) |
Merge remainder of kpfleming's astobj patch (bug #3183)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4582 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'include')
-rwxr-xr-x | include/asterisk/astobj.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/include/asterisk/astobj.h b/include/asterisk/astobj.h index 162654024..a70cf70aa 100755 --- a/include/asterisk/astobj.h +++ b/include/asterisk/astobj.h @@ -179,6 +179,7 @@ extern "C" { while((iterator = (container)->head)) { \ (container)->head = (iterator)->next[0]; \ ASTOBJ_DESTROY(iterator,destructor); \ + ASTOBJ_UNREF(iterator,destructor); \ } \ ASTOBJ_CONTAINER_UNLOCK(container); \ } while(0) @@ -190,7 +191,7 @@ extern "C" { ASTOBJ_CONTAINER_TRAVERSE(container, do { \ ASTOBJ_RDLOCK(iterator); \ if (!(comparefunc(iterator->field, (data)))) { \ - found = ASTOBJ_REF(iterator); \ + found = iterator; \ ASTOBJ_CONTAINER_WRLOCK(container); \ if (prev) \ prev->next[0] = next; \ @@ -232,7 +233,7 @@ extern "C" { do { \ ASTOBJ_CONTAINER_WRLOCK(container); \ (newobj)->next[0] = (container)->head; \ - (container)->head = (newobj); \ + (container)->head = ASTOBJ_REF(newobj); \ ASTOBJ_CONTAINER_UNLOCK(container); \ } while(0) |