mmappcomponents/mmmtpdataprovider/mmmtpdprequestprocessor/src/csetobjectreferences.cpp
--- a/mmappcomponents/mmmtpdataprovider/mmmtpdprequestprocessor/src/csetobjectreferences.cpp Tue May 25 13:14:13 2010 +0300
+++ b/mmappcomponents/mmmtpdataprovider/mmmtpdprequestprocessor/src/csetobjectreferences.cpp Wed Jun 09 10:13:45 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