--- a/mmlibs/mmfw/src/Plugin/StdSourceAndSink/FileAccess.h Wed Jun 09 11:20:54 2010 +0300
+++ b/mmlibs/mmfw/src/Plugin/StdSourceAndSink/FileAccess.h Mon Jun 21 17:23:11 2010 +0300
@@ -130,8 +130,9 @@
HBufC* iFilePath;
ContentAccess::CData* iData;
- RFile iLegacyFile;
- TBool iLegacyFileOpen;
+ RFile iLegacyFile;
+ RFile64 iFile64; //For defect EASA-84ZC6J
+ TBool iLegacyFileOpen;
};
--- a/mmlibs/mmfw/src/Plugin/StdSourceAndSink/fileaccess.cpp Wed Jun 09 11:20:54 2010 +0300
+++ b/mmlibs/mmfw/src/Plugin/StdSourceAndSink/fileaccess.cpp Mon Jun 21 17:23:11 2010 +0300
@@ -14,6 +14,7 @@
//
#include <f32file.h>
+#include <f32file64.h>
#include <e32std.h>
#include <caf/attribute.h>
#include <caf/bitset.h>
@@ -147,9 +148,10 @@
CContentFile::~CContentFile()
{
delete iData;
-
- if (iLegacyFileOpen)
- iLegacyFile.Close();
+
+ iLegacyFile.Close();
+ iFile64.Close(); //For defect EASA-84ZC6J
+
delete iFilePath;
}
@@ -269,12 +271,35 @@
RFile& CContentFile::FileL()
{
if (!iLegacyFileOpen)
- {
- User::LeaveIfError(iLegacyFile.Open(*iSession, *iFilePath, EFileRead | EFileStream | EFileShareReadersOrWriters));
- iLegacyFileOpen = ETrue;
+ {//For defect EASA-84ZC6J
+ TInt error = iLegacyFile.Open(*iSession, *iFilePath, EFileRead | EFileStream | EFileShareReadersOrWriters);
+ if ( error == KErrTooBig )
+ {
+ User::LeaveIfError(iFile64.Open(*iSession, *iFilePath, EFileRead | EFileStream | EFileShareReadersOrWriters));
+ iLegacyFileOpen = ETrue;
+ return iFile64;
+ }
+
+ else if (error == KErrNone)
+ {
+ iLegacyFileOpen = ETrue;
+ return iLegacyFile;
+ }
+
+ else
+ {
+ User::Leave(error);
+ }
}
- return iLegacyFile;
- }
+ if(iLegacyFile.SubSessionHandle())
+ {
+ return iLegacyFile;
+ }
+ else
+ {
+ return iFile64;
+ }
+}
TInt CContentFile::Data(CData*& aData)
{
--- a/mmlibs/mmutilitylib/group/multimedia_common.mrp Wed Jun 09 11:20:54 2010 +0300
+++ b/mmlibs/mmutilitylib/group/multimedia_common.mrp Mon Jun 21 17:23:11 2010 +0300
@@ -1,6 +1,18 @@
#multimedia_common.mrp
#
-#Copyright (c) 2005-2009 Symbian Ltd. All rights reserved.
+# Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
+# All rights reserved.
+# This component and the accompanying materials are made available
+# under the terms of "Eclipse Public License v1.0"
+# which accompanies this distribution, and is available
+# at the URL "http://www.eclipse.org/legal/epl-v10.html".
+#
+# Initial Contributors:
+# Nokia Corporation - initial contribution.
+#
+# Contributors:
+#
+# Description:
#
component multimedia_common