06d7be056190c14b85e71bc12523f18ea6815b5e markd Mon Dec 7 00:50:29 2020 -0800 BLAT mmap index support merge with master diff --git src/hg/hgTracks/mainMain.c src/hg/hgTracks/mainMain.c index 94d5bab..dbe437c 100644 --- src/hg/hgTracks/mainMain.c +++ src/hg/hgTracks/mainMain.c @@ -1,75 +1,76 @@ /* hgTracks - Human Genome browser main cgi script. */ /* Copyright (C) 2013 The Regents of the University of California * See README in this or parent directory for licensing information. */ #include "common.h" #include "linefile.h" #include "portable.h" #include "memalloc.h" #include "localmem.h" #include "hCommon.h" #include "obscure.h" #include "dystring.h" #include "hash.h" #include "cheapcgi.h" #include "htmshell.h" #include "web.h" #include "cart.h" #include "hdb.h" #include "hui.h" #include "hgFind.h" #include "hgTracks.h" #include "versionInfo.h" #include "net.h" #include "search.h" #include "imageV2.h" #include "extTools.h" #include "botDelay.h" #include "hgConfig.h" boolean issueBotWarning; long enteredMainTime = 0; int main(int argc, char *argv[]) { enteredMainTime = clock1000(); measureTime(NULL); issueBotWarning = earlyBotCheck(enteredMainTime, "hgTracks", delayFraction, 0, 0, "html"); browserName = hBrowserName(); organization = "UCSC"; /* Push very early error handling - this is just * for the benefit of the cgiVarExists, which * somehow can't be moved effectively into doMiddle. */ htmlPushEarlyHandlers(); cgiSpoof(&argc, argv); char * link = webTimeStampedLinkToResourceOnFirstCall("HGStyle.css",TRUE); // resource file link if (link) // wrapped in html htmlSetStyle(link); oldVars = hashNew(10); if (cgiVarExists("hgt.redirectTool")) { + // user has selected one of the tools in View > In external tools: Do not plot, just redirect. printf("Content-type: text/html\n\n"); errAbortSetDoContentType(FALSE); cart = cartForSession(hUserCookie(), NULL, NULL); extToolRedirect(cart, cgiString("hgt.redirectTool")); } else cartHtmlShell("UCSC Genome Browser v"CGI_VERSION, doMiddle, hUserCookie(), excludeVars, oldVars); // TODO: better place for this ? puts("<link rel=\"stylesheet\" href=\"https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css\">\n"); if (measureTiming) measureTime("Time to write and close cart"); if (measureTiming) { fprintf(stdout, "<span class='timing'>Overall total time: %ld millis<br /></span>\n", clock1000() - enteredMainTime); } cgiExitTime("hgTracks", enteredMainTime); return 0; }