summaryrefslogtreecommitdiff
path: root/project2/cgi
diff options
context:
space:
mode:
authorrandomdan <randomdan@localhost>2012-02-13 13:04:14 +0000
committerrandomdan <randomdan@localhost>2012-02-13 13:04:14 +0000
commit86266b41c1fcac32ec6dd6e73baf24a57de969bc (patch)
tree1f0514689540ed89e96e752f77dc38bb91eb1ef5 /project2/cgi
parentAdds support for presenter level caching modules and implements a file based ... (diff)
downloadproject2-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.cpp6
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();
}