8a93241fb4a9f70ee86a4b2a78d4a2bf48cedbac max Tue May 7 11:55:44 2013 -0700 forgot to init a variable diff --git src/hg/hgTracks/pubsTracks.c src/hg/hgTracks/pubsTracks.c index 27c4e9a..b7430d5 100644 --- src/hg/hgTracks/pubsTracks.c +++ src/hg/hgTracks/pubsTracks.c @@ -247,55 +247,55 @@ va_end(args); } static void pubsLoadKeywordYearItems(struct track *tg) /* load items that fulfill keyword and year filter */ { pubsParseClassColors(); struct sqlConnection *conn = hAllocConn(database); char *keywords = cartOptionalStringClosestToHome(cart, tg->tdb, FALSE, "pubsFilterKeywords"); char *yearFilter = cartOptionalStringClosestToHome(cart, tg->tdb, FALSE, "pubsFilterYear"); char *publFilter = cartOptionalStringClosestToHome(cart, tg->tdb, FALSE, "pubsFilterPublisher"); char *articleTable = pubsArticleTable(tg); if(yearFilter == NULL || sameWord(yearFilter, "anytime")) yearFilter = NULL; -if(sameWord(publFilter, "all")) +if(publFilter==NULL || sameWord(publFilter, "all")) publFilter = NULL; if(isNotEmpty(keywords)) keywords = makeMysqlMatchStr(sqlEscapeString(keywords)); if(isEmpty(yearFilter) && isEmpty(keywords) && isEmpty(publFilter)) { loadGappedBed(tg); } else { char* oldLabel = tg->longLabel; tg->longLabel = catTwoStrings(oldLabel, " (filter activated)"); freeMem(oldLabel); char yearWhere[256], keywordsWhere[1024], prefix[256]; char **row; struct linkedFeatures *lfList = NULL; struct trackDb *tdb = tg->tdb; int scoreMin = atoi(trackDbSettingClosestToHomeOrDefault(tdb, "scoreMin", "0")); int scoreMax = atoi(trackDbSettingClosestToHomeOrDefault(tdb, "scoreMax", "1000")); boolean useItemRgb = bedItemRgb(tdb); - char *extra; + char *extra = NULL; struct dyString *extraDy = dyStringNew(0); if (sqlColumnExists(conn, tg->table, "year")) // new table schema: filter fields are on main bed table { if (isNotEmpty(keywords)) dyStringPrintf(extraDy, "name IN (SELECT articleId FROM %s WHERE " "MATCH (citation, title, authors, abstract) AGAINST ('%s' IN BOOLEAN MODE))", articleTable, keywords); if (isNotEmpty(yearFilter)) dyStringPrintfWithSep(extraDy, " AND ", " year >= '%s'", sqlEscapeString(yearFilter)); if (isNotEmpty(publFilter)) dyStringPrintfWithSep(extraDy, " AND ", " publisher = '%s'", sqlEscapeString(publFilter)); extra = extraDy->string; } else