--- a/httpfilters/cookie/ManagerSrc/CookieManagerClient.cpp Thu Jul 15 19:14:59 2010 +0300
+++ b/httpfilters/cookie/ManagerSrc/CookieManagerClient.cpp Thu Aug 19 10:27:19 2010 +0300
@@ -81,10 +81,6 @@
EXPORT_C TInt RCookieManager::Connect()
{
CLOG( ( EClientConnect, 0, _L( "-> RCookieManager::Connect" ) ) );
- iCookieMgrData = new TCookieMgrInternalStruct(iStringPool);
- if (!(iCookieMgrData && iCookieMgrData->Init() == KErrNone))
- return KErrNoMemory;
-
TInt error = KErrNone;
RProcess server;
error = server.Create( KCookieServerExe, TPtr( NULL, 0 ),
@@ -114,7 +110,12 @@
CLOG( ( EClientConnect, 0, _L( "Creating server session" ) ) );
error = CreateSession( KCookieServerName, Version() );
CLOG( ( EClientConnect, 0, _L( "Server session created, errcode%d" ), error ) );
-
+ if(error == KErrNone)
+ {
+ iCookieMgrData = new TCookieMgrInternalStruct(iStringPool);
+ if (!(iCookieMgrData && iCookieMgrData->Init() == KErrNone))
+ return KErrNoMemory;
+ }
CLOG( ( EClientConnect, 0, _L( "<- RCookieManager::Connect" ) ) );
return error;
}
@@ -348,6 +349,10 @@
EXPORT_C void RCookieManager::Close()
{
CLOG(( EClient, 0, _L("-> RCookieManager::Close") ));
+ if( !Handle() )
+ {
+ return;
+ }
TInt deletestatus =0;
DestroyCookiesFromMemory(deletestatus);
delete iCookieMgrData;