d54c29ab3217a2734c1d6105ef5b04bf63a6023e kent Tue Feb 26 22:51:12 2013 -0800 Adding slRefFreeListAndVals utility routine. diff --git src/inc/common.h src/inc/common.h index b2a1376..1e9f4f1 100644 --- src/inc/common.h +++ src/inc/common.h @@ -608,30 +608,33 @@ void *val; /* A reference to something. */ }; struct slRef *slRefNew(void *val); /* Create new slRef element. */ struct slRef *refOnList(struct slRef *refList, void *val); /* Return ref if val is already on list, otherwise NULL. */ void refAdd(struct slRef **pRefList, void *val); /* Add reference to list. */ void refAddUnique(struct slRef **pRefList, void *val); /* Add reference to list if not already on list. */ +void slRefFreeListAndVals(struct slRef **pList); +/* Free up (with simple freeMem()) each val on list, and the list itself as well. */ + struct slRef *refListFromSlList(void *list); /* Make a reference list that mirrors a singly-linked list. */ struct slPair /* A name/value pair. */ { struct slPair *next; /* Next in list. */ char *name; /* Name of item. */ void *val; /* Pointer to item data. */ }; struct slPair *slPairNew(char *name, void *val); /* Allocate new name/value pair. */ void slPairAdd(struct slPair **pList, char *name, void *val);