equal
deleted
inserted
replaced
12 // |
12 // |
13 // Description: |
13 // Description: |
14 // |
14 // |
15 |
15 |
16 #include <f32file.h> |
16 #include <f32file.h> |
17 #include <f32file64.h> |
|
18 #include <e32std.h> |
17 #include <e32std.h> |
19 #include <caf/attribute.h> |
18 #include <caf/attribute.h> |
20 #include <caf/bitset.h> |
19 #include <caf/bitset.h> |
21 #include <caf/content.h> |
20 #include <caf/content.h> |
22 #include <caf/data.h> |
21 #include <caf/data.h> |
146 } |
145 } |
147 |
146 |
148 CContentFile::~CContentFile() |
147 CContentFile::~CContentFile() |
149 { |
148 { |
150 delete iData; |
149 delete iData; |
151 |
150 |
152 iLegacyFile.Close(); |
151 if (iLegacyFileOpen) |
153 iFile64.Close(); //For defect EASA-84ZC6J |
152 iLegacyFile.Close(); |
154 |
|
155 delete iFilePath; |
153 delete iFilePath; |
156 } |
154 } |
157 |
155 |
158 |
156 |
159 CContentFile* CContentFile::NewL(RFs& aSession, const TDesC& aFilePath, const TDesC& aUniqueId, TUint aMode, TBool aEnableUI) |
157 CContentFile* CContentFile::NewL(RFs& aSession, const TDesC& aFilePath, const TDesC& aUniqueId, TUint aMode, TBool aEnableUI) |
269 * @return Reference to RFile handle to current file |
267 * @return Reference to RFile handle to current file |
270 */ |
268 */ |
271 RFile& CContentFile::FileL() |
269 RFile& CContentFile::FileL() |
272 { |
270 { |
273 if (!iLegacyFileOpen) |
271 if (!iLegacyFileOpen) |
274 {//For defect EASA-84ZC6J |
272 { |
275 TInt error = iLegacyFile.Open(*iSession, *iFilePath, EFileRead | EFileStream | EFileShareReadersOrWriters); |
273 User::LeaveIfError(iLegacyFile.Open(*iSession, *iFilePath, EFileRead | EFileStream | EFileShareReadersOrWriters)); |
276 if ( error == KErrTooBig ) |
274 iLegacyFileOpen = ETrue; |
277 { |
275 } |
278 User::LeaveIfError(iFile64.Open(*iSession, *iFilePath, EFileRead | EFileStream | EFileShareReadersOrWriters)); |
276 return iLegacyFile; |
279 iLegacyFileOpen = ETrue; |
277 } |
280 return iFile64; |
|
281 } |
|
282 |
|
283 else if (error == KErrNone) |
|
284 { |
|
285 iLegacyFileOpen = ETrue; |
|
286 return iLegacyFile; |
|
287 } |
|
288 |
|
289 else |
|
290 { |
|
291 User::Leave(error); |
|
292 } |
|
293 } |
|
294 if(iLegacyFile.SubSessionHandle()) |
|
295 { |
|
296 return iLegacyFile; |
|
297 } |
|
298 else |
|
299 { |
|
300 return iFile64; |
|
301 } |
|
302 } |
|
303 |
278 |
304 TInt CContentFile::Data(CData*& aData) |
279 TInt CContentFile::Data(CData*& aData) |
305 { |
280 { |
306 if (iData==NULL) |
281 if (iData==NULL) |
307 { |
282 { |