diff -r 8bfb9186a8b8 -r 4bd5176e1bc8 webengine/osswebengine/WebCore/platform/network/symbian/HttpSessionManager.cpp --- a/webengine/osswebengine/WebCore/platform/network/symbian/HttpSessionManager.cpp Tue May 11 17:13:44 2010 +0300 +++ b/webengine/osswebengine/WebCore/platform/network/symbian/HttpSessionManager.cpp Tue May 25 13:52:38 2010 +0300 @@ -42,7 +42,8 @@ // CONSTANTS _LIT8( KHttpProtString, "HTTP/TCP" ); _LIT (KNullStr, ""); - +const TInt KResetRetryFlagTimeOut = 5*1000*1000; +TInt doResetFlag(TAny*); class MBrCtlSpecialLoadObserver; using namespace WebCore; @@ -60,6 +61,7 @@ m_SelfDownloadContentHandler = NULL; m_SelfDownloadContentTypes = KNullStr().Alloc(); retryConnectivityFlag = EFalse; + m_resetTimer = NULL; } HttpSessionManager::~HttpSessionManager() @@ -76,6 +78,12 @@ m_SelfDownloadContentHandler = NULL; delete m_SelfDownloadContentTypes; m_SelfDownloadContentTypes = NULL; + if(m_resetTimer) + { + m_resetTimer->Cancel(); + delete m_resetTimer; + m_resetTimer = NULL; + } m_ClientAcceptHeaders.ResetAndDestroy(); m_ClientAcceptHeaders.Close(); closeHttpSession(); @@ -507,4 +515,29 @@ } } +void HttpSessionManager::startTimer() +{ + RDebug::Printf("hamish HttpSessionManager::startTimer()"); + if(m_resetTimer) + deleteTimer(); + m_resetTimer = CPeriodic::NewL(CActive::EPriorityStandard); + m_resetTimer->Start(KResetRetryFlagTimeOut,0,TCallBack(&doResetFlag,this)); +} + +void HttpSessionManager::deleteTimer() +{ + m_resetTimer->Cancel(); + delete m_resetTimer; + m_resetTimer = NULL; +} + +TInt doResetFlag(TAny* ptr) +{ + RDebug::Printf("hamish doResetFlag"); + HttpSessionManager* tmp = static_cast(ptr); + tmp->unSetRetryConnectivityFlag(); + tmp->deleteTimer(); + return EFalse; +} + // end of file