diff -r 74aa6861c87d -r debf68073f2f mtpdataproviders/mtpimagedp/src/cmtpimagedpsendobjectinfo.cpp --- a/mtpdataproviders/mtpimagedp/src/cmtpimagedpsendobjectinfo.cpp Tue Sep 14 22:52:29 2010 +0300 +++ b/mtpdataproviders/mtpimagedp/src/cmtpimagedpsendobjectinfo.cpp Wed Sep 15 13:07:27 2010 +0300 @@ -98,6 +98,7 @@ CMTPImageDpSendObjectInfo::CMTPImageDpSendObjectInfo(MMTPDataProviderFramework& aFramework, MMTPConnection& aConnection, CMTPImageDataProvider& aDataProvider) : CMTPRequestProcessor(aFramework, aConnection, 0, NULL), iDataProvider(aDataProvider), + iHiddenStatus( EMTPVisible ), iObjectPropertyMgr(aDataProvider.PropertyMgr()) { @@ -785,12 +786,12 @@ SendResponseL(EMTPRespCodeTransactionCancelled); } else if (result && !iCancelled) - { + { + TUint attValue = 0; + User::LeaveIfError(iFileReceived->File().Att(attValue)); if (iProtectionStatus == EMTPProtectionNoProtection || iProtectionStatus == EMTPProtectionReadOnly) { - TUint attValue = 0; - User::LeaveIfError(iFileReceived->File().Att(attValue)); attValue &= ~(KEntryAttNormal | KEntryAttReadOnly); if (iProtectionStatus == EMTPProtectionNoProtection) @@ -803,6 +804,12 @@ } User::LeaveIfError(iFileReceived->File().SetAtt(attValue, ~attValue)); } + if ( iHiddenStatus == EMTPHidden ) + { + attValue &= ~KEntryAttHidden; + attValue |= KEntryAttHidden; + User::LeaveIfError(iFileReceived->File().SetAtt(attValue, ~attValue)); + } TTime modifiedTime; //update datemodified property. if(iDateMod != NULL && iDateMod->Length()) @@ -1062,7 +1069,9 @@ case EMTPObjectPropCodeNonConsumable: iNonConsumable = aElement.Uint8L(CMTPTypeObjectPropListElement::EValue); break; - + case EMTPObjectPropCodeHidden: + iHiddenStatus = aElement.Uint16L(CMTPTypeObjectPropListElement::EValue); + break; default: break; } @@ -1133,6 +1142,7 @@ case EMTPObjectPropCodeRepresentativeSampleFormat: case EMTPObjectPropCodeProtectionStatus: + case EMTPObjectPropCodeHidden: if (aElement.Uint16L(CMTPTypeObjectPropListElement::EDatatype) != EMTPTypeUINT16) { responseCode = EMTPRespCodeInvalidObjectPropFormat;