f3b007a51ad9817aa14fcba45bc0d958419b1eb8 tdreszer Tue Apr 12 15:38:54 2011 -0700 Fixed bug that tripped up Kate's encodeExp. diff --git src/hg/lib/mdb.c src/hg/lib/mdb.c index 12fe3a2..6546451 100644 --- src/hg/lib/mdb.c +++ src/hg/lib/mdb.c @@ -2632,45 +2632,44 @@ } } slReverse(&edvVars); return edvVars; } struct slName *mdbObjFindCompositeNamedEncodeEdvs(struct sqlConnection *conn,char *tableName,struct mdbObj *mdbObj) // returns NULL or the Experiment Defining Variable names for this composite { if (!mdbObjIsCompositeMember(mdbObj)) return NULL; // This should be a valid composite memeber struct mdbObj *compObj = mdbObjQueryCompositeObj(conn,tableName,mdbObj); if (compObj == NULL) return NULL; - struct slName *edvs = mdbObjGetNamedEncodeEdvs(compObj); mdbObjFree(&compObj); return edvs; } struct mdbVar *mdbObjFindEncodeEdvPairs(struct sqlConnection *conn,char *tableName,struct mdbObj *mdbObj,boolean includeNone) // returns NULL or the Experiment Defining Variables and values for this composite member object // If includeNone, then defined variables not found in obj will be included as {var}="None". { // In rare cases, the EDVs reside with the object and NOT in a objType=composite. struct slName *compositeEdvs = mdbObjGetNamedEncodeEdvs(mdbObj); // looking locally first. if (compositeEdvs == NULL) { - struct slName *compositeEdvs = mdbObjFindCompositeNamedEncodeEdvs(conn,tableName,mdbObj); + compositeEdvs = mdbObjFindCompositeNamedEncodeEdvs(conn,tableName,mdbObj); if (compositeEdvs == NULL) return NULL; } return mdbObjEncodeEdvsAsMdbVars(mdbObj,compositeEdvs,includeNone); } #define EXPERIMENTS_TABLE "hgFixed.encodeExp" struct mdbObj *mdbObjsEncodeExperimentify(struct sqlConnection *conn,char *db,char *tableName,struct mdbObj **pMdbObjs, int warn,boolean createExpIfNecessary) // Organizes objects into experiments and validates experiment IDs. Will add/update the ids in the structures. // If warn=1, then prints to stdout all the experiments/obs with missing or wrong expIds; // warn=2, then print line for each obj with expId or warning. // createExpIfNecessary means go ahead and add to the hgFixed.encodeExp table to get an ID