diff options
author | randomdan <randomdan@localhost> | 2012-02-13 13:04:14 +0000 |
---|---|---|
committer | randomdan <randomdan@localhost> | 2012-02-13 13:04:14 +0000 |
commit | 86266b41c1fcac32ec6dd6e73baf24a57de969bc (patch) | |
tree | 1f0514689540ed89e96e752f77dc38bb91eb1ef5 /project2/cgi | |
parent | Adds support for presenter level caching modules and implements a file based ... (diff) | |
download | project2-86266b41c1fcac32ec6dd6e73baf24a57de969bc.tar.bz2 project2-86266b41c1fcac32ec6dd6e73baf24a57de969bc.tar.xz project2-86266b41c1fcac32ec6dd6e73baf24a57de969bc.zip |
Lazy session ID creation
Diffstat (limited to 'project2/cgi')
-rw-r--r-- | project2/cgi/cgiAppEngine.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/project2/cgi/cgiAppEngine.cpp b/project2/cgi/cgiAppEngine.cpp index 9e91800..c08eb3e 100644 --- a/project2/cgi/cgiAppEngine.cpp +++ b/project2/cgi/cgiAppEngine.cpp @@ -135,7 +135,7 @@ CgiApplicationEngine::process() const HttpHeaderPtr header = rs->getHeader(); if (!sessionEmpty || !cursession->Empty()) { sessionsContainer->SaveSession(cursession); - header->setCookie(cgicc::HTTPCookie(SESSIONID, cursession->ID.str(), "Session ID", + header->setCookie(cgicc::HTTPCookie(SESSIONID, cursession->ID().str(), "Session ID", _env->getServerName().substr(_env->getServerName().find(".")), env()->sessionTimeOut, "/", false)); } if (TransformSourcePtr ts = currentStage.get<2>()) { @@ -231,10 +231,10 @@ CgiApplicationEngine::addAppData(const MultiRowSetPresenter * p, OutputOptionsPt if (!o || o->Core()) { addCoreAppData(p); } - if (!outputCachingActive && (!o || o->Session())) { + if (!outputCachingActive && (!cursession->Empty()) && (!o || o->Session())) { // Sessions variables p->addNewRowSet("session", env()->scriptNamespacePrefix); - p->addAttribute("id", cursession->ID.str()); + p->addAttribute("id", cursession->ID().str()); cursession->ForeachValue(boost::bind(&CgiApplicationEngine::addVarToPresenter, this, p, _1, _2)); p->finishRowSet(); } |