130388103d6579f91a15a0922b5f237b689894b6
chmalee
  Tue May 18 15:56:51 2021 -0700
Fix hgTracks web browser caching again. This time allow CGIs to specify their own HTTP headers, as of now only hgTracks prevents caching. refs #26627

diff --git src/hg/inc/cart.h src/hg/inc/cart.h
index 9fd6b8f..ca3822d 100644
--- src/hg/inc/cart.h
+++ src/hg/inc/cart.h
@@ -9,30 +9,33 @@
 #define CART_H
 
 struct cart;         // forward definition for use in trackDb.h
 
 #include "jksql.h"
 #include "errAbort.h"
 #include "dystring.h"
 #include "linefile.h"
 #include "trackDb.h"
 
 // If cgi set as CART_VAR_EMPTY, then removed from cart
 // If If cgi created new and oldVars are stored, then will be CART_VAR_EMPTY in old vars
 #define CART_VAR_EMPTY "[]"
 #define IS_CART_VAR_EMPTY(var) ((var) == NULL || sameString(var,CART_VAR_EMPTY))
 
+// A list of headers each CGI can use to control their own HTTP headers
+extern struct slPair *httpHeaders;
+
 typedef struct sqlConnection *(*DbConnector)();
 /* funtion type used to get a connection to database */
 
 typedef void (*DbDisconnect)(struct sqlConnection **pConn);
 /* function type used to cleanup a connection from database */
 
 
 struct cart
 /* A cart of settings that persist. */
    {
    struct cart *next;	/* Next in list. */
    char *userId;	/* User ID in database. */
    char *sessionId;	/* Session ID in database. */
    struct hash *hash;	/* String valued hash. */
    struct hash *exclude;	/* Null valued hash of variables not to save. */