ffbd8443f24124c3023126cccebd1d09efae07de
braney
  Wed Nov 27 10:36:22 2019 -0800
a little clean-up for safety's sake

diff --git src/hg/lib/hui.c src/hg/lib/hui.c
index d3a6e9e..f96422b 100644
--- src/hg/lib/hui.c
+++ src/hg/lib/hui.c
@@ -7601,31 +7601,30 @@
 
 enum trackVisibility visCompositeViewDefault(struct trackDb *parentTdb,char *view)
 // returns the default track visibility of particular view within a composite track
 {
 char *visibility = NULL;
 compositeViewCfgExpandedByDefault(parentTdb,view,&visibility);
 enum trackVisibility vis = hTvFromString(visibility);
 freeMem(visibility);
 return vis;
 }
 
 static boolean hCompositeDisplayViewDropDowns(char *db, struct cart *cart, struct trackDb *parentTdb)
 // UI for composite view drop down selections.
 {
 int ix;
-char varName[SMALLBUF];
 char classes[SMALLBUF];
 char javascript[JBUFSIZE];
 char id[256];
 #define CFG_LINK  "<B><A HREF=\"#a_cfg_%s\" id='%s' "\
                   "title=\"%s Configuration\">%s &#9662;</A><INPUT TYPE=HIDDEN " \
                   "NAME='%s.showCfg' value='%s'></B>"
 #define CFG_LINK_JS "return (showConfigControls('%s') == false);"
 #define MAKE_CFG_LINK(name,title,viewTrack,open) \
 		    safef(id, sizeof id, "%s_link", (name)); \
                     printf(CFG_LINK, (name),id,(title),(title),(viewTrack),((open)?"on":"off")); \
 		    safef(javascript, sizeof javascript, CFG_LINK_JS, (name)); \
 		    jsOnEventById("click", id, javascript);
 		    			
 
 // membersForAll is generated once per track, then cached
@@ -7643,59 +7642,59 @@
 for (ix = 0; ix < membersOfView->count; ix++)
     {
     if (membersOfView->subtrackList     != NULL
     &&  membersOfView->subtrackList[ix] != NULL)
         {
         struct trackDb *subtrack = membersOfView->subtrackList[ix]->val;
         matchedViewTracks[ix] = subtrack->parent;
         configurable[ix] = (char)cfgTypeFromTdb(subtrack, TRUE);
         if (configurable[ix] != cfgNone && trackDbSettingBlocksConfiguration(subtrack,FALSE))
             configurable[ix]  = cfgNone;
 
         if (configurable[ix] != cfgNone)
             {
             if (firstOpened == -1)
                 {
-                safef(varName, sizeof(varName), "%s.showCfg", matchedViewTracks[ix]->track);
                 if (cartOrTdbBoolean(cart, matchedViewTracks[ix], "showCfg", FALSE))
                     firstOpened = ix;
                 }
             makeCfgRows = TRUE;
             }
         }
     }
 
 toLowerN(membersOfView->groupTitle, 1);
 printf("<B>Select %s</B> (<A HREF='../goldenPath/help/multiView.html' title='Help on views' "
        "TARGET=_BLANK>help</A>):\n", membersOfView->groupTitle);
 printf("<TABLE><TR style='text-align:left;'>\n");
 // Make row of vis drop downs
 for (ix = 0; ix < membersOfView->count; ix++)
     {
     char *viewName = membersOfView->tags[ix];
     if (matchedViewTracks[ix] != NULL)
         {
         printf("<TD>");
         if (configurable[ix] != cfgNone)
             {
             MAKE_CFG_LINK(membersOfView->tags[ix],membersOfView->titles[ix],
                           matchedViewTracks[ix]->track,(firstOpened == ix))
             }
         else
             printf("<B>%s</B>",membersOfView->titles[ix]);
         puts("</TD>");
 
+        char varName[SMALLBUF];
         safef(varName, sizeof(varName), "%s", matchedViewTracks[ix]->track);
         enum trackVisibility tv = hTvFromString(cartUsualString(cart,varName,
                                       hStringFromTv(visCompositeViewDefault(parentTdb,viewName))));
 
 	struct slPair *events = NULL;
         safef(javascript, sizeof(javascript), "matSelectViewForSubTracks(this,'%s');", viewName);
 	slPairAdd(&events, "change", cloneString(javascript));
     
         safef(javascript, sizeof(javascript), "this.lastIndex=this.selectedIndex;");
 	slPairAdd(&events, "focus", cloneString(javascript));
 
         printf("<TD>");
         safef(classes, sizeof(classes), "viewDD normalText %s", membersOfView->tags[ix]);
         hTvDropDownClassWithJavascript(varName, NULL, tv, parentTdb->canPack, classes, events);
         puts(" &nbsp; &nbsp; &nbsp;</TD>");