cb757269cca8bc473f97d588a2f3737acaf0fb41
markd
  Wed Dec 9 22:11:32 2020 -0800
dropped support for absolute genomeDataDir

diff --git src/gfServer/gfServer.c src/gfServer/gfServer.c
index 9e5d6e3..8d6f87e 100644
--- src/gfServer/gfServer.c
+++ src/gfServer/gfServer.c
@@ -1138,33 +1138,30 @@
 if ((!isSafeRelativePath(genome)) || (strchr(genome, '/') != NULL))
     errAbort("genome argument can't contain '/' or '..': %s", genome);
 if (!isSafeRelativePath(genomeDataDir))
     errAbort("genomeDataDir argument must be a relative path without '..' elements: %s", genomeDataDir);
 
 // will free current content if initialized
 genoFindIndexFree(&dynSession->gfIdx);
 hashFree(&dynSession->perSeqMaxHash);
 
 time_t startTime = clock1000();
 dynSession->isTrans = isTrans;
 safecpy(dynSession->genome, sizeof(dynSession->genome), genome);
 
 // construct path to sequence and index files
 char seqFileDir[PATH_LEN];
-if (genomeDataDir[0] == '/')  // abs or relative
-    safecpy(seqFileDir, sizeof(seqFileDir), genomeDataDir);
-else
 safef(seqFileDir, sizeof(seqFileDir), "%s/%s", rootDir, genomeDataDir);
     
 char seqFile[PATH_LEN];
 safef(seqFile, PATH_LEN, "%s/%s.2bit", seqFileDir, genome);
 if (!fileExists(seqFile))
     errAbort("sequence file for %s does not exist: %s", genome, seqFile);
 
 char gfIdxFile[PATH_LEN];
 safef(gfIdxFile, PATH_LEN, "%s/%s.%s.gfidx", seqFileDir, genome, isTrans ? "trans" : "untrans");
 if (!fileExists(gfIdxFile))
     errAbort("gf index file for %s does not exist: %s", genome, gfIdxFile);
 dynSession->gfIdx = loadGfIndex(gfIdxFile, isTrans);
 
 char perSeqMaxFile[PATH_LEN];
 safef(perSeqMaxFile, PATH_LEN, "%s/%s.perseqmax", seqFileDir, genome);