--- a/mtpdataproviders/mtpimagedp/src/cmtpimagedpobjectpropertymgr.cpp Wed Apr 14 16:49:36 2010 +0300
+++ b/mtpdataproviders/mtpimagedp/src/cmtpimagedpobjectpropertymgr.cpp Tue Apr 27 17:30:23 2010 +0300
@@ -422,7 +422,7 @@
__FLOG(_L8("<< CMTPImageDpObjectPropertyMgr::GetPropertyL"));
}
-void CMTPImageDpObjectPropertyMgr::GetPropertyL(TMTPObjectPropertyCode aProperty, TUint32 &aValue)
+void CMTPImageDpObjectPropertyMgr::GetPropertyL(TMTPObjectPropertyCode aProperty, TUint32 &aValue, TBool alwaysCreate/* = ETrue*/)
{
__FLOG(_L8(">> CMTPImageDpObjectPropertyMgr::GetPropertyL"));
__ASSERT_DEBUG(iObjectInfo, Panic(EMTPImageDpObjectNull));
@@ -450,11 +450,14 @@
TInt err = iFs.Entry(iObjectInfo->DesC(CMTPObjectMetaData::ESuid), fileEntry);
if (err == KErrNone)
{
- iDataProvider.ThumbnailManager().GetThumbMgr()->SetFlagsL(CThumbnailManager::EDefaultFlags);
- if(fileEntry.FileSize() > KFileSizeMax)
+ if(fileEntry.FileSize() > KFileSizeMax || !alwaysCreate)
{
iDataProvider.ThumbnailManager().GetThumbMgr()->SetFlagsL(CThumbnailManager::EDoNotCreate);
}
+ else
+ {
+ iDataProvider.ThumbnailManager().GetThumbMgr()->SetFlagsL(CThumbnailManager::EDefaultFlags);
+ }
/**
* trap the leave to avoid return general error when PC get object property list
@@ -578,7 +581,7 @@
__FLOG(_L8("<< CMTPImageDpObjectPropertyMgr::GetPropertyL"));
}
-void CMTPImageDpObjectPropertyMgr::GetPropertyL(TMTPObjectPropertyCode aProperty, CMTPTypeArray& aValue)
+void CMTPImageDpObjectPropertyMgr::GetPropertyL(TMTPObjectPropertyCode aProperty, CMTPTypeArray& aValue, TBool alwaysCreate /*= ETrue*/)
{
__FLOG(_L8(">> CMTPImageDpObjectPropertyMgr::GetPropertyL -- SmapleData"));
@@ -599,11 +602,15 @@
TInt err = iFs.Entry(iObjectInfo->DesC(CMTPObjectMetaData::ESuid), fileEntry);
if (err == KErrNone)
{
- iDataProvider.ThumbnailManager().GetThumbMgr()->SetFlagsL(CThumbnailManager::EDefaultFlags);
- if(fileEntry.FileSize() > KFileSizeMax)
+
+ if(fileEntry.FileSize() > KFileSizeMax || !alwaysCreate)
{
iDataProvider.ThumbnailManager().GetThumbMgr()->SetFlagsL(CThumbnailManager::EDoNotCreate);
}
+ else
+ {
+ iDataProvider.ThumbnailManager().GetThumbMgr()->SetFlagsL(CThumbnailManager::EDefaultFlags);
+ }
/**
* trap the leave to avoid return general error when PC get object property list