mmappcomponents/mmmtpdataprovider/mmmtpdprequestprocessor/src/csetobjectreferences.cpp
changeset 35 2ee890d2f7e7
parent 32 edd273b3192a
--- a/mmappcomponents/mmmtpdataprovider/mmmtpdprequestprocessor/src/csetobjectreferences.cpp	Thu May 27 13:19:19 2010 +0300
+++ b/mmappcomponents/mmmtpdataprovider/mmmtpdprequestprocessor/src/csetobjectreferences.cpp	Fri Jun 11 14:04:53 2010 +0300
@@ -88,7 +88,7 @@
 // Standard c++ constructor
 // -----------------------------------------------------------------------------
 //
-EXPORT_C CSetObjectReferences::CSetObjectReferences( MMTPDataProviderFramework& aFramework,
+CSetObjectReferences::CSetObjectReferences( MMTPDataProviderFramework& aFramework,
     MMTPConnection& aConnection,
     MMmMtpDpConfig& aDpConfig ) :
         CRequestProcessor( aFramework,
@@ -105,7 +105,7 @@
 // set references to DB
 // -----------------------------------------------------------------------------
 //
-EXPORT_C void CSetObjectReferences::DoSetObjectReferencesL( const CMTPObjectMetaData& aObject )
+void CSetObjectReferences::DoSetObjectReferencesL( const CMTPObjectMetaData& aObject )
     {
     TUint formatCode = aObject.Uint( CMTPObjectMetaData::EFormatCode );
     TBool hasReference = MmMtpDpUtility::HasReference( formatCode );
@@ -164,6 +164,10 @@
         iFramework.ObjectMgr().ObjectL( objectHandle, *object );
         PRINT1( _L( "MM MTP <> object file name is %S" ), &(object->DesC( CMTPObjectMetaData::ESuid ) ) );
         DoSetObjectReferencesL( *object );
+        
+        // set it to something else other than EMTPSubFormatCodeUnknown to prevent being queried from MPX later in the same session
+        object->SetUint( CMTPObjectMetaData::EFormatSubCode, EMTPSubFormatCodeUndefined );
+        iFramework.ObjectMgr().ModifyObjectL( *object );
 
         CleanupStack::PopAndDestroy( object ); // - object