d8542ef96c5fc7454b1830a28c2fcf8c6a4fda27 tdreszer Thu Dec 22 11:27:36 2011 -0800 Removing old ifdefs. No functional changes here. diff --git src/hg/lib/cart.c src/hg/lib/cart.c index 4944d1f..d487051 100644 --- src/hg/lib/cart.c +++ src/hg/lib/cart.c @@ -11,34 +11,30 @@ #include "cart.h" #include "net.h" #include "web.h" #include "hdb.h" #include "jksql.h" #include "jsHelper.h" #include "trashDir.h" #ifndef GBROWSE #include "customFactory.h" #include "googleAnalytics.h" #include "wikiLink.h" #endif /* GBROWSE */ #include "hgMaf.h" #include "hui.h" -// NOTE: using '.' as delimiter in trackName.var cart vars is too pervasive to -// to support '_' so don't bother! -//////// #define SUPPORT_UNDERBAR_DELIMIT - static char *sessionVar = "hgsid"; /* Name of cgi variable session is stored in. */ static char *positionCgiName = "position"; DbConnector cartDefaultConnector = hConnectCart; DbDisconnect cartDefaultDisconnector = hDisconnectCart; static void hashUpdateDynamicVal(struct hash *hash, char *name, void *val) /* Val is a dynamically allocated (freeMem-able) entity to put * in hash. Override existing hash item with that name if any. * Otherwise make new hash item. */ { struct hashEl *hel = hashLookup(hash, name); if (hel == NULL) hashAdd(hash, name, val); else @@ -278,37 +274,34 @@ cartSetString(cart, ctFileVar, ctFileName); customTracksSaveFile(db, ctList, ctFileName); } } } } #endif /* GBROWSE */ static void storeInOldVars(struct cart *cart, struct hash *oldVars, char *var) /* Store all cart hash elements for var into oldVars (if it exists). */ { if (oldVars == NULL) return; struct hashEl *hel = hashLookup(cart->hash, var); -#define CART_DIFFS_INCLUDE_EMPTIES -#ifdef CART_DIFFS_INCLUDE_EMPTIES // NOTE: New cgi vars not in old cart cannot be distinguished from vars not newly set by cgi. // Solution: Add 'empty' var to old vars for cgi vars not already in cart if (hel == NULL) hashAdd(oldVars, var, cloneString(CART_VAR_EMPTY)); -#endif///def CART_DIFFS_INCLUDE_EMPTIES while (hel != NULL) { hashAdd(oldVars, var, cloneString(hel->val)); hel = hashLookupNext(hel); } } static void cartJustify(struct cart *cart, struct hash *oldVars) /* Handles rules for allowing some cart settings to override others. */ { // New priority (position) settings should erase imgOrd settings if(oldVars == NULL) return; #define POSITION_SUFFIX ".priority" @@ -1969,49 +1962,43 @@ //#define DEBUG_WITH_WARN #ifdef DEBUG_WITH_WARN #define WARN warn #define ASSERT assert #else///ifndef DEBUG_WITH_WARN #define WARN(...) #define ASSERT(...) #endif///ndef DEBUG_WITH_WARN boolean cartValueHasChanged(struct cart *newCart,struct hash *oldVars,char *setting,boolean ignoreRemoved,boolean ignoreCreated) /* Returns TRUE if new cart setting has changed from old cart setting */ { char *oldValue = hashFindVal(oldVars,setting); if (oldValue == NULL) -#ifdef CART_DIFFS_INCLUDE_EMPTIES return FALSE; // All vars changed by cgi will be found in old vars -#else///ifndef CART_DIFFS_INCLUDE_EMPTIES - return (!ignoreCreated); -#endif///ndef CART_DIFFS_INCLUDE_EMPTIES char *newValue = cartOptionalString(newCart,setting); if (newValue == NULL) return (!ignoreRemoved); -#ifdef CART_DIFFS_INCLUDE_EMPTIES if (sameString(oldValue,CART_VAR_EMPTY)) { if (sameString(newValue,"hide") || sameString(newValue,"off") || sameString(newValue,"0")) // Special cases DANGER! return FALSE; } -#endif///def CART_DIFFS_INCLUDE_EMPTIES return (differentString(newValue,oldValue)); } static int cartNamesPruneChanged(struct cart *newCart,struct hash *oldVars, struct slPair **cartNames,boolean ignoreRemoved,boolean unChanged) /* Prunes a list of cartNames if the settings have changed between new and old cart. Returns pruned count */ { int pruned = 0; struct slPair *oldList = *cartNames; struct slPair *newList = NULL; struct slPair *oneName = NULL; while ((oneName = slPopHead(&oldList)) != NULL) { @@ -2031,67 +2018,51 @@ int cartRemoveFromTdbTree(struct cart *cart,struct trackDb *tdb,char *suffix,boolean skipParent) /* Removes a 'trackName.suffix' from all tdb descendents (but not parent). If suffix NULL then removes 'trackName' which holds visibility */ { int removed = 0; boolean vis = (suffix == NULL || *suffix == '\0'); struct slRef *tdbRef, *tdbRefList = trackDbListGetRefsToDescendants(skipParent?tdb->subtracks:tdb); for (tdbRef = tdbRefList; tdbRef != NULL; tdbRef = tdbRef->next) { struct trackDb *descendentTdb = tdbRef->val; char setting[512]; if (vis) safef(setting,sizeof(setting),"%s",descendentTdb->track); else safef(setting,sizeof(setting),"%s.%s",descendentTdb->track,suffix); -#ifdef SUPPORT_UNDERBAR_DELIMIT - int count = cartRemoveAndCount(cart,setting); - if (count > 0 || vis) - { - removed += count; - continue; - } - *(setting + strlen(descendentTdb->track)) = '_'; // Try '_' -#endif///def SUPPORT_UNDERBAR_DELIMIT removed += cartRemoveAndCount(cart,setting); } return removed; } static int cartRemoveOldFromTdbTree(struct cart *newCart,struct hash *oldVars,struct trackDb *tdb,char *suffix,char *parentVal,boolean skipParent) /* Removes a 'trackName.suffix' from all tdb descendents (but not parent), BUT ONLY IF OLD or same as parentVal. If suffix NULL then removes 'trackName' which holds visibility */ { int removed = 0; boolean vis = (suffix == NULL || *suffix == '\0'); struct slRef *tdbRef, *tdbRefList = trackDbListGetRefsToDescendants(skipParent?tdb->subtracks:tdb); for (tdbRef = tdbRefList; tdbRef != NULL; tdbRef = tdbRef->next) { struct trackDb *descendentTdb = tdbRef->val; char setting[512]; if (vis) safef(setting,sizeof(setting),"%s",descendentTdb->track); else safef(setting,sizeof(setting),"%s.%s",descendentTdb->track,suffix); char *newVal = cartOptionalString(newCart,setting); -#ifdef SUPPORT_UNDERBAR_DELIMIT - if (newVal == NULL && !vis) // NOTE: assumed '.' not '_' - { - *(setting + strlen(descendentTdb->track)) = '_'; // Try '_' - newVal = cartOptionalString(newCart,setting); - } -#endif///def SUPPORT_UNDERBAR_DELIMIT if ( newVal != NULL && ( (parentVal != NULL && sameString(newVal,parentVal)) || (FALSE == cartValueHasChanged(newCart,oldVars,setting,TRUE,FALSE)))) removed += cartRemoveAndCount(newCart,setting); } return removed; } static boolean cartTdbOverrideSuperTracks(struct cart *cart,struct trackDb *tdb,boolean ifJustSelected) /* When when the child of a hidden supertrack is foudn and selected, then shape the supertrack accordingly Returns TRUE if any cart changes are made */ { // This is only pertinent to supertrack children just turned on if (!tdbIsSuperTrackChild(tdb)) return FALSE; @@ -2377,35 +2348,30 @@ #ifdef SUBTRACK_CFG char *cartVis = cartOptionalString(newCart,tdbView->track); if (cartVis != NULL) // special to get viewVis in the list { lmAllocVar(lm, oneName); oneName->name = lmCloneString(lm, tdbView->track); oneName->val = lmCloneString(lm, cartVis); slAddHead(&changedSettings,oneName); } #endif///ndef SUBTRACK_CFG // Now the non-vis settings safef(setting,sizeof(setting),"%s.",tdbView->track); struct slPair *changeViewSettings = cartVarsWithPrefixLm(newCart, setting, lm); changedSettings = slCat(changedSettings, changeViewSettings); -#ifdef SUPPORT_UNDERBAR_DELIMIT - safef(setting,sizeof(setting),"%s_",tdbView->track); - changeViewSettings = cartVarsWithPrefixLm(newCart, setting, lm); - changedSettings = slCat(changedSettings, changeViewSettings); -#endif///ndef SUPPORT_UNDERBAR_DELIMIT } if (changedSettings == NULL && !containerVisChanged) return anythingChanged; // Prune list to only those which have changed if(changedSettings != NULL) { (void)cartNamesPruneChanged(newCart,oldVars,&changedSettings,TRUE,FALSE); if (changedSettings == NULL && !containerVisChanged) return anythingChanged; } // Walk through views if (hasViews) { @@ -2415,35 +2381,31 @@ boolean viewVisChanged = FALSE; if (!tdbIsView(tdbView,&view)) break; #ifndef SUBTRACK_CFG safef(setting, sizeof(setting),"%s.%s.",tdb->track,view); // unfortunatly setting name could be containerName.View.??? #endif///ndef SUBTRACK_CFG struct slPair *leftOvers = NULL; // Walk through settings that match this view while ((oneName = slPopHead(&changedSettings)) != NULL) { suffix = NULL; if(startsWith(tdbView->track,oneName->name)) { suffix = oneName->name + strlen(tdbView->track); - #ifdef SUPPORT_UNDERBAR_DELIMIT - if (*suffix == '.' || *suffix == '_') - #else///ifndef SUPPORT_UNDERBAR_DELIMIT if (*suffix == '.') // NOTE: standardize on '.' since its is so pervasive - #endif///ndef SUPPORT_UNDERBAR_DELIMIT suffix++; else if (isalnum(*suffix)) // viewTrackName is subset of another track! suffix = NULL; // add back to list for next round } #ifndef SUBTRACK_CFG else if(startsWith(setting,oneName->name)) suffix = oneName->name + strlen(setting); #endif///ndef SUBTRACK_CFG if (suffix == NULL) { slAddHead(&leftOvers,oneName); continue; }