e8a86f15b747412c363679ddefed5df4fd3d7f73 braney Tue Sep 19 16:38:29 2017 -0700 fix a bug in how saved sessions remaps cart variables. Also, make sure priority settings apply to views diff --git src/hg/lib/cart.c src/hg/lib/cart.c index 411f0e7..b5fe2c9 100644 --- src/hg/lib/cart.c +++ src/hg/lib/cart.c @@ -333,34 +333,35 @@ char buffer[4096]; for(hv = hubVarList; hv; hv = hv->next) { unsigned hubId = sqlUnsigned(hv->name + strlen(hgHubConnectHubVarPrefix)); if (hubId == oldHubId) { cartRemove(cart, hv->name); safef(buffer, sizeof buffer, "%s%d", hgHubConnectHubVarPrefix, newHubId); cartSetString(cart, buffer, "1"); } } // need to change hub_#hubNumber#* (track visibilities) safef(buffer, sizeof buffer, "%s%d_", hubTrackPrefix, oldHubId); +int oldNameLength = strlen(buffer); hubVarList = cartVarsWithPrefix(cart, buffer); for(hv = hubVarList; hv; hv = hv->next) { - char *name = hv->name + strlen(buffer); + char *name = hv->name + oldNameLength; safef(buffer, sizeof buffer, "%s%d_%s", hubTrackPrefix, newHubId, name); cartSetString(cart, buffer, cloneString(hv->val)); cartRemove(cart, hv->name); } // need to change hgtgroup_hub_#hubNumber# (blue bar open ) // need to change expOrder_hub_#hubNumber#, simOrder_hub_#hubNumber# (sorting) // need to change trackHubs #hubNumber# cartSetString(cart, hgHubConnectRemakeTrackHub, "on"); cartSetString(cart, hubFileVar, newHubFileName); } void cartCopyCustomTracks(struct cart *cart) /* If cart contains any live custom tracks, save off a new copy of them,