diff -r 62f9d29f7211 -r 272b002df977 webservices/wscore/src/sencoreservicemanager.cpp --- a/webservices/wscore/src/sencoreservicemanager.cpp Thu Jan 07 16:19:19 2010 +0200 +++ b/webservices/wscore/src/sencoreservicemanager.cpp Mon Jan 18 21:21:14 2010 +0200 @@ -634,8 +634,7 @@ if ( contract.Length() == 0 && endpoint.Length() == 0 ) { - delete apServiceDescription; - apServiceDescription = NULL; + TLSLOG_L(KSenCoreServiceManagerLogChannelBase , KMinLogLevel,"CSenCoreServiceManager::AddServiceDescriptionL()"); TLSLOG_L(KSenCoreServiceManagerLogChannelBase , KMinLogLevel," - No endpoint & no contract: invalid SD NOT added!"); return KErrSenNoContractNoEndPoint; @@ -665,8 +664,7 @@ TLSLOG_FORMAT((KSenCoreServiceManagerLogChannelBase , KMinLogLevel, _L8(" - error code: %d"),retVal)); // delete the new instance and return error (to framework) - delete apServiceDescription; - apServiceDescription = NULL; + return retVal; } #ifdef _SENDEBUG @@ -685,8 +683,7 @@ TLSLOG_L(KSenCoreServiceManagerLogChannelBase , KMinLogLevel," - Remove duplicate SD failed. Returning error."); // delete the new instance and return error (to framework) - delete apServiceDescription; - apServiceDescription = NULL; + return KErrGeneral; }