2806b36916f0c1d9e8602e877c7c4e68adfc22cd braney Sat Sep 21 17:24:19 2013 -0700 code to support version numbers in *efSeg id's , and to support newfiltering regime that doesn't filter based on repeat content. diff --git src/hg/hgTracks/simpleTracks.c src/hg/hgTracks/simpleTracks.c index 5e06517..2c01061 100644 --- src/hg/hgTracks/simpleTracks.c +++ src/hg/hgTracks/simpleTracks.c @@ -5290,31 +5290,36 @@ /* lookup the organism for an mrna, or NULL if not found. This will * only return the genus, and only the first seven letters of that. * WARNING: static return */ { return orgShortName(getOrganism(conn, acc)); } char *getGeneName(struct sqlConnection *conn, char *acc) /* get geneName from refLink or NULL if not found. * WARNING: static return */ { static char nameBuf[256]; char query[256], *name = NULL; if (hTableExists(database, "refLink")) { - sqlSafef(query, sizeof query, "select name from refLink where mrnaAcc = '%s'", acc); + /* remove the version number if any */ + static char accBuf[1024]; + safecpy(accBuf, sizeof accBuf, acc); + chopSuffix(accBuf); + + sqlSafef(query, sizeof query, "select name from refLink where mrnaAcc = '%s'", accBuf); name = sqlQuickQuery(conn, query, nameBuf, sizeof(nameBuf)); if ((name != NULL) && (name[0] == '\0')) name = NULL; } return name; } char *getRgdGene2Symbol(struct sqlConnection *conn, char *acc) /* get gene symbol from rgdGene2ToSymbol or NULL if not found. * WARNING: static return */ { static char symbolBuf[256]; char query[256], *symbol = NULL; if (hTableExists(database, "rgdGene2ToSymbol")) { @@ -5419,31 +5424,34 @@ char *refGeneName(struct track *tg, void *item) /* Get name to use for refGene item. */ { struct linkedFeatures *lf = item; if (lf->extra != NULL) return lf->extra; else return lf->name; } char *refGeneMapName(struct track *tg, void *item) /* Return un-abbreviated gene name. */ { struct linkedFeatures *lf = item; -return lf->name; +char buffer[1024]; +safecpy(buffer, sizeof buffer, lf->name); +chopSuffix(buffer); +return cloneString(buffer); } void lookupRefNames(struct track *tg) /* This converts the refSeq accession to a gene name where possible. */ { struct linkedFeatures *lf; struct sqlConnection *conn = hAllocConn(database); boolean isNative = sameString(tg->table, "refGene"); boolean labelStarted = FALSE; boolean useGeneName = FALSE; boolean useAcc = FALSE; boolean useMim = FALSE; struct hashEl *refGeneLabels = cartFindPrefix(cart, (isNative ? "refGene.label" : "xenoRefGene.label")); struct hashEl *label;