[Asterisk-cvs] asterisk/include/asterisk astobj.h,1.2,1.3

markster at lists.digium.com markster at lists.digium.com
Wed Dec 29 02:55:25 CST 2004


Update of /usr/cvsroot/asterisk/include/asterisk
In directory mongoose.digium.com:/tmp/cvs-serv17044/include/asterisk

Modified Files:
	astobj.h 
Log Message:
Merge remainder of kpfleming's astobj patch (bug #3183)


Index: astobj.h
===================================================================
RCS file: /usr/cvsroot/asterisk/include/asterisk/astobj.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- astobj.h	28 Dec 2004 23:27:44 -0000	1.2
+++ astobj.h	29 Dec 2004 07:50:15 -0000	1.3
@@ -179,6 +179,7 @@
 		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 @@
 		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 @@
 	do { \
 		ASTOBJ_CONTAINER_WRLOCK(container); \
 		(newobj)->next[0] = (container)->head; \
-		(container)->head = (newobj); \
+		(container)->head = ASTOBJ_REF(newobj); \
 		ASTOBJ_CONTAINER_UNLOCK(container); \
 	} while(0)
 




More information about the svn-commits mailing list