From 039d95073e16caa89677fcf5a80d97b72582a5bf Mon Sep 17 00:00:00 2001 From: psychon Date: Tue, 30 Mar 2010 19:49:51 +0000 Subject: [PATCH] Bugfix for CWebSock::GetRequestCookie() When a module page is requested, m_sModName is set. When then GetSession() tries to look up its session cookie, it doesn't find it since GetRequestCookie() actually looks up Mod::::. The fix is to look up the global cookie name if the mod one doesnt exist. git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@1861 726aef4b-f618-498e-8847-2d620e286838 --- WebModules.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/WebModules.cpp b/WebModules.cpp index d0432834..b39d69fe 100644 --- a/WebModules.cpp +++ b/WebModules.cpp @@ -478,11 +478,16 @@ bool CWebSock::ForceLogin() { } CString CWebSock::GetRequestCookie(const CString& sKey) const { + CString sRet; + if (!m_sModName.empty()) { - return CHTTPSock::GetRequestCookie("Mod::" + m_sModName + "::" + sKey); + sRet = CHTTPSock::GetRequestCookie("Mod::" + m_sModName + "::" + sKey); } - return CHTTPSock::GetRequestCookie(sKey); + if (sRet.empty()) { + return CHTTPSock::GetRequestCookie(sKey); + } + return sRet; } bool CWebSock::SendCookie(const CString& sKey, const CString& sValue) {