264 CFileData* fileData = CFileData::NewL(); |
264 CFileData* fileData = CFileData::NewL(); |
265 CleanupStack::PushL( fileData ); |
265 CleanupStack::PushL( fileData ); |
266 CHarvestData* harvestData = CHarvestData::NewL(); |
266 CHarvestData* harvestData = CHarvestData::NewL(); |
267 CleanupStack::PushL( harvestData ); |
267 CleanupStack::PushL( harvestData ); |
268 |
268 |
269 const TInt errorCode = GatherDataL( mdeObject, *fileData, *harvestData ); |
269 TInt errorCode( KErrNone ); |
270 if ( errorCode == KErrNone || errorCode == KErrCompletion ) // ok, something got harvested |
270 TRAPD( error, errorCode = GatherDataL( mdeObject, *fileData, *harvestData ) ); |
|
271 if ( error == KErrNone && (errorCode == KErrNone || errorCode == KErrCompletion ) ) // ok, something got harvested |
271 { |
272 { |
272 if ( mdeObject.Id() == 0 || mdeObject.Placeholder() ) // is a new object or placeholder |
273 if ( mdeObject.Id() == 0 || mdeObject.Placeholder() ) // is a new object or placeholder |
273 { |
274 { |
274 TRAP_IGNORE( HandleObjectPropertiesL( *harvestData, *fileData, *aHD, ETrue ) ); |
275 TRAP_IGNORE( HandleObjectPropertiesL( *harvestData, *fileData, *aHD, ETrue ) ); |
|
276 mdeObject.SetPlaceholder( EFalse ); |
275 } |
277 } |
276 else // not a new object |
278 else // not a new object |
277 { |
279 { |
278 TRAP_IGNORE( HandleObjectPropertiesL( *harvestData, *fileData, *aHD, EFalse ) ); |
280 TRAP_IGNORE( HandleObjectPropertiesL( *harvestData, *fileData, *aHD, EFalse ) ); |
279 } |
281 } |
302 nanX.SetNaN(); |
304 nanX.SetNaN(); |
303 nanX.GetTReal( locData->iQuality ); |
305 nanX.GetTReal( locData->iQuality ); |
304 |
306 |
305 aHD->SetLocationData( locData ); |
307 aHD->SetLocationData( locData ); |
306 } |
308 } |
|
309 } |
|
310 else if( error != KErrNone) |
|
311 { |
|
312 WRITELOG1( "CHarvesterImagePlugin::HarvestL() - other error: %d", error ); |
|
313 TInt convertedError = KErrNone; |
|
314 MdsUtils::ConvertTrapError( error, convertedError ); |
|
315 aHD->SetErrorCode( convertedError ); |
|
316 WRITELOG1( "CHarvesterImagePlugin::HarvestL() - returning: %d", convertedError ); |
307 } |
317 } |
308 else |
318 else |
309 { |
319 { |
310 WRITELOG1( "CHarvesterImagePlugin::HarvestL() - other error: %d", errorCode ); |
320 WRITELOG1( "CHarvesterImagePlugin::HarvestL() - other error: %d", errorCode ); |
311 TInt convertedError = KErrNone; |
321 TInt convertedError = KErrNone; |