diff -r 1c556dee8eb1 -r eb6690d0d439 syncmlfw/common/http/src/nsmlhttpclient.cpp --- a/syncmlfw/common/http/src/nsmlhttpclient.cpp Fri Aug 06 18:29:23 2010 +0530 +++ b/syncmlfw/common/http/src/nsmlhttpclient.cpp Thu Aug 19 17:35:34 2010 +0530 @@ -19,6 +19,13 @@ #include "nsmlhttpclient.h" #include "nsmlerror.h" #include +#include +#include // KCRUidOperatorDatasyncInternalKeys +#include + +//CONSTANTS +const TInt KErrorCodeRangeFirst = 400; +const TInt KErrorCodeRangeLast = 516; //Fix to Remove the Bad Compiler Warnings #ifndef __WINS__ @@ -48,6 +55,14 @@ { FeatureManager::InitializeLibL(); iAgent = aAgent; + + CRepository* rep = NULL; + rep = CRepository::NewL( KCRUidOperatorDatasyncInternalKeys ); + CleanupStack::PushL( rep ); + rep->Get( KNsmlOpDsHttpErrorReporting, iErrorReportingEnabled ); + CleanupStack::PopAndDestroy( rep ); + + iRepositorySSC = CRepository::NewL( KCRUidOperatorDatasyncErrorKeys ); } //------------------------------------------------------------ // CHttpEventHandler::~CHttpEventHandler() @@ -55,7 +70,8 @@ //------------------------------------------------------------ CHttpEventHandler::~CHttpEventHandler() { - FeatureManager::UnInitializeLib(); + FeatureManager::UnInitializeLib(); + delete iRepositorySSC; } //------------------------------------------------------------ // CHttpEventHandler::NewLC() @@ -123,6 +139,15 @@ if ( contentTypeStr != KSmlContentTypeDS && contentTypeStr != KSmlContentTypeDM ) { + if( this->iAgent->iSession == ESyncMLDSSession ) + { + if( iErrorReportingEnabled && ( ( status >= KErrorCodeRangeFirst ) + && ( status <= KErrorCodeRangeLast ) ) ) + { + iRepositorySSC->Set( KNsmlOpDsSyncErrorCode, status ); + } + } + //Error fix for BPSS-7H7H5S DBG_FILE( _S8("CHttpEventHandler::MHFRunL() There is a mismatch in the Content Type") );