d9601b7485629b07bca40a2ce6205b53b162aad2 braney Tue Dec 14 14:55:50 2010 -0800 add the ability to add a release tag(s) to include statements #452 diff --git src/hg/lib/hgFindSpecCustom.c src/hg/lib/hgFindSpecCustom.c index 9cc94df..5d9c358 100644 --- src/hg/lib/hgFindSpecCustom.c +++ src/hg/lib/hgFindSpecCustom.c @@ -348,41 +348,42 @@ struct hgFindSpec *hgFindSpecFromRa(char *db, char *raFile) /* Load track info from ra file into list. */ { static boolean reEntered = FALSE; struct lineFile *lf = lineFileOpen(raFile, TRUE); char *line, *word; struct hgFindSpec *hfsList = NULL, *hfs; boolean done = FALSE; char *incFile; for (;;) { /* Seek to next line that starts with 'searchName' or 'searchTable' */ for (;;) { + char *subRelease; if (!lineFileNext(lf, &line, NULL)) { done = TRUE; break; } if (startsWith("searchName", line) || startsWith("searchTable", line)) { lineFileReuse(lf); break; } - else if ((incFile = trackDbInclude(raFile, line)) != NULL) + else if ((incFile = trackDbInclude(raFile, line, &subRelease)) != NULL) { /* Set reEntered=TRUE whenever we recurse, so we don't polish * multiple times and get too many backslash-escapes. */ boolean reBak = reEntered; reEntered = TRUE; struct hgFindSpec *incHfs = hgFindSpecFromRa(db, incFile); reEntered = reBak; hfsList = slCat(hfsList, incHfs); } } if (done) break; /* Allocate track structure and fill it in until next blank line. */ AllocVar(hfs);