0b073cd9000113cdb5e48ef772449ede60e1dea0 galt Fri Mar 24 01:31:59 2017 -0700 little fix to cart.c so definitions happen before cartNew called. diff --git src/hg/lib/cart.c src/hg/lib/cart.c index 31370a6..fda6545 100644 --- src/hg/lib/cart.c +++ src/hg/lib/cart.c @@ -1593,54 +1593,55 @@ } } /* Validate login cookies if login is enabled */ if (loginSystemEnabled()) { struct slName *newCookies = loginValidateCookies(cart), *sl; for (sl = newCookies; sl != NULL; sl = sl->next) printf("Set-Cookie: %s\r\n", sl->name); } } struct cart *cartForSession(char *cookieName, char **exclude, struct hash *oldVars) /* This gets the cart without writing any HTTP lines at all to stdout. */ { -char *hguid = getCookieId(cookieName); -char *hgsid = getSessionId(); -struct cart *cart = cartNew(hguid, hgsid, exclude, oldVars); -cartExclude(cart, sessionVar); +/* Most cgis call this routine */ if (sameOk(cfgOption("signalsHandler"), "on")) /* most cgis call this routine */ initSigHandlers(hDumpStackEnabled()); /* Proxy Settings - * Most cgis call this routine * net.c cannot see the cart, pass the value through env var */ char *httpProxy = cfgOption("httpProxy"); if (httpProxy) setenv("http_proxy", httpProxy, TRUE); char *httpsProxy = cfgOption("httpsProxy"); if (httpsProxy) setenv("https_proxy", httpsProxy, TRUE); char *ftpProxy = cfgOption("ftpProxy"); if (ftpProxy) setenv("ftp_proxy", ftpProxy, TRUE); char *noProxy = cfgOption("noProxy"); if (noProxy) setenv("no_proxy", noProxy, TRUE); char *logProxy = cfgOption("logProxy"); if (logProxy) - setenv("log_proxy", noProxy, TRUE); + setenv("log_proxy", logProxy, TRUE); + +char *hguid = getCookieId(cookieName); +char *hgsid = getSessionId(); +struct cart *cart = cartNew(hguid, hgsid, exclude, oldVars); +cartExclude(cart, sessionVar); return cart; } struct cart *cartAndCookieWithHtml(char *cookieName, char **exclude, struct hash *oldVars, boolean doContentType) /* Load cart from cookie and session cgi variable. Write cookie * and optionally content-type part HTTP preamble to web page. Don't * write any HTML though. */ { // Note: early abort works fine but early warn does not htmlPushEarlyHandlers(); struct cart *cart = cartForSession(cookieName, exclude, oldVars); popWarnHandler(); popAbortHandler();