672bcfa4886acb35b9ae55d7c6b2e2ca9b6a681b
tdreszer
  Fri Mar 25 15:22:38 2011 -0700
Needed to expose mdbVarsFree()
diff --git src/hg/inc/mdb.h src/hg/inc/mdb.h
index 50aa1c3..b8a274f 100644
--- src/hg/inc/mdb.h
+++ src/hg/inc/mdb.h
@@ -418,30 +418,34 @@
 boolean mdbObjInComposite(struct mdbObj *mdb, char *composite);
 // Returns TRUE if metaDb object is in specified composite.
 // If composite is NULL, always return true // FIXME: KATE Why return true if composite not defined???
 
 // -- Requested by Kate? --
 //struct encodeExp *encodeExps(char *composite,char *expTable);
 //struct mdbObjs *mdbObjsForDefinedExpId(int expId);
 // Returns the mdb objects belonging to a single encode experiment defined in the encodExp table
 
 
 // --------------- Free at last ----------------
 void mdbObjsFree(struct mdbObj **mdbObjsPtr);
 // Frees one or more metadata objects and any contained mdbVars.  Will free any hashes as well.
 #define mdbObjFree(mdbObjPtr) mdbObjsFree(mdbObjPtr)
 
+void mdbVarsFree(struct mdbVar **mdbVarsPtr);
+// Frees one or more metadata vars and any val as well
+#define mdbVarFree(mdbVarPtr) mdbVarsFree(mdbVarPtr)
+
 void mdbByVarsFree(struct mdbByVar **mdbByVarsPtr);
 // Frees one or more metadata vars and any contained vals and objs.  Will free any hashes as well.
 #define mdbByVarFree(mdbByVarPtr) mdbByVarsFree(mdbByVarPtr)
 
 
 // ----------------- CGI specific routines for use with tdb -----------------
 const struct mdbObj *metadataForTable(char *db,struct trackDb *tdb,char *table);
 // Returns the metadata for a table.  NEVER FREE THIS STRUCT!
 // This is the main routine for CGIs to access metadata
 
 const char *metadataFindValue(struct trackDb *tdb, char *var);
 // Finds the val associated with the var or retruns NULL
 
 
 #define MDB_VAL_STD_TRUNCATION 64