diff options
author | Bent Bisballe Nyeng <deva@aasimon.org> | 2011-10-07 14:02:06 +0200 |
---|---|---|
committer | Bent Bisballe Nyeng <deva@aasimon.org> | 2011-10-07 14:02:06 +0200 |
commit | 49fb23e82473d3e650ff4d3c2bf9e365455ef74c (patch) | |
tree | 80e0fd5f0f9e34087d7301acf9eae5f8b956faff /server/src/session.cc | |
parent | 5843ee0f637be32b89ab5b8a17dd8b4427bf59b3 (diff) |
Dump sessions in session xml files before discard, when session_discard_path is in the config file.
Diffstat (limited to 'server/src/session.cc')
-rw-r--r-- | server/src/session.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/server/src/session.cc b/server/src/session.cc index e236416..8071d45 100644 --- a/server/src/session.cc +++ b/server/src/session.cc @@ -152,10 +152,17 @@ void Session::discard() { DEBUG(session, "[%p] discard(sessionid: '%s')\n", this, sessionid.c_str()); + // Store session file in discarded folder before deleting. + if(isreadonly == false && Conf::session_discard_path != "") { + SessionSerialiser ser(env, Conf::session_discard_path); + ser.save(this); + } + if(_journal) { delete _journal; _journal = NULL; } + if(isreadonly == false) { AutoBorrower<Database*> borrower(env->dbpool); Database *db = borrower.get(); |