37e40ae31e02d615256bb9af43468ec2188afd24
braney
  Fri Feb 24 15:19:01 2023 -0800
make recommended track sets merge with current cart instead of
over-writing it.  This is under hg.conf control (mergeRecommended=on)

diff --git src/hg/inc/cart.h src/hg/inc/cart.h
index 38dafc2..94be03b 100644
--- src/hg/inc/cart.h
+++ src/hg/inc/cart.h
@@ -461,30 +461,31 @@
 /* Set the connector that will be used by the cart to disconnect from the
  * database. Default disconnector is hDisconnectCart */
 
 
 /* Libified constants and code that originally belonged only to hgSession
  * (now hgTracks uses them too), plus a couple for DataTables in hgSession
  * and hgPublicSessions: */
 #define hgSessionPrefix "hgS_"
 #define hgPublicSessionsPrefix "hgPS_"
 #define dataTableStateName "DataTableState"
 #define hgSessionTableState hgSessionPrefix dataTableStateName
 #define hgPublicSessionsTableState hgPublicSessionsPrefix dataTableStateName
 
 #define hgsOtherUserName hgSessionPrefix "otherUserName"
 #define hgsOtherUserSessionName hgSessionPrefix "otherUserSessionName"
+#define hgsMergeCart hgSessionPrefix "merge"
 #define hgsOtherUserSessionLabel hgSessionPrefix "otherUserSessionLabel"
 #define hgsDoOtherUser hgSessionPrefix "doOtherUser"
 
 #define hgsLoadUrlName hgSessionPrefix "loadUrlName"
 #define hgsDoLoadUrl hgSessionPrefix "doLoadUrl"
 
 #define namedSessionTable "namedSessionDb"
 
 void sessionTouchLastUse(struct sqlConnection *conn, char *encUserName,
 			 char *encSessionName);
 /* Increment namedSessionDb.useCount and update lastUse for this session. */
 
 void cartLoadUserSession(struct sqlConnection *conn, char *sessionOwner,
 			 char *sessionName, struct cart *cart,
 			 struct hash *oldVars, char *actionVar);