branch | RCL_3 |
changeset 17 | ff2fb7658ff7 |
parent 15 | f0aa341a25bf |
child 19 | f759b6186ab5 |
15:f0aa341a25bf | 17:ff2fb7658ff7 |
---|---|
42 const TInt KMinor = 2; |
42 const TInt KMinor = 2; |
43 |
43 |
44 const TInt KStoreUnrecoverableErr = KErrCorrupt; |
44 const TInt KStoreUnrecoverableErr = KErrCorrupt; |
45 |
45 |
46 // Database path without drive letter |
46 // Database path without drive letter |
47 //Symbian^3 v4 |
|
47 _LIT( KThumbnailDatabaseName, ":[102830AB]thumbnail_v4.db" ); |
48 _LIT( KThumbnailDatabaseName, ":[102830AB]thumbnail_v4.db" ); |
48 |
49 |
49 _LIT( KDrv, ":"); |
50 _LIT( KDrv, ":"); |
50 |
51 |
51 // Allow access to database only for the server process |
52 // Allow access to database only for the server process |
207 if( iMaintenanceTimer ) |
208 if( iMaintenanceTimer ) |
208 { |
209 { |
209 iMaintenanceTimer->Cancel(); |
210 iMaintenanceTimer->Cancel(); |
210 delete iMaintenanceTimer; |
211 delete iMaintenanceTimer; |
211 iMaintenanceTimer = NULL; |
212 iMaintenanceTimer = NULL; |
212 } |
|
213 |
|
214 if(!iServer->IsFormatting()) |
|
215 { |
|
216 FlushCacheTable( ETrue ); |
|
217 } |
213 } |
218 |
214 |
219 CloseStatements(); |
215 CloseStatements(); |
220 iDatabase.Close(); |
216 iDatabase.Close(); |
221 |
217 |
568 inforows = stmt.ColumnInt64( column ); |
564 inforows = stmt.ColumnInt64( column ); |
569 } |
565 } |
570 |
566 |
571 stmt.Close(); |
567 stmt.Close(); |
572 |
568 |
573 if(ret < 0) |
569 if(rowStatus < 0) |
574 { |
570 { |
575 #ifdef _DEBUG |
571 #ifdef _DEBUG |
576 TPtrC errorMsg2 = iDatabase.LastErrorMessage(); |
572 TPtrC errorMsg2 = iDatabase.LastErrorMessage(); |
577 TN_DEBUG2( "RThumbnailTransaction::ResetThumbnailIDs() lastError %S, ret = %d" , &errorMsg2); |
573 TN_DEBUG2( "RThumbnailTransaction::ResetThumbnailIDs() lastError %S, ret = %d" , &errorMsg2); |
578 #endif |
574 #endif |
593 datarows = stmt.ColumnInt64( column ); |
589 datarows = stmt.ColumnInt64( column ); |
594 } |
590 } |
595 |
591 |
596 stmt.Close(); |
592 stmt.Close(); |
597 |
593 |
598 if(ret < 0) |
594 if( rowStatus < 0) |
599 { |
595 { |
600 #ifdef _DEBUG |
596 #ifdef _DEBUG |
601 TPtrC errorMsg2 = iDatabase.LastErrorMessage(); |
597 TPtrC errorMsg2 = iDatabase.LastErrorMessage(); |
602 TN_DEBUG2( "RThumbnailTransaction::ResetThumbnailIDs() lastError %S, ret = %d" , &errorMsg2); |
598 TN_DEBUG2( "RThumbnailTransaction::ResetThumbnailIDs() lastError %S, ret = %d" , &errorMsg2); |
603 #endif |
599 #endif |
645 minor = stmt.ColumnInt( column++); |
641 minor = stmt.ColumnInt( column++); |
646 } |
642 } |
647 |
643 |
648 stmt.Close(); |
644 stmt.Close(); |
649 |
645 |
650 if(ret < 0 ) |
646 if( rowStatus < 0 ) |
651 { |
647 { |
652 #ifdef _DEBUG |
648 #ifdef _DEBUG |
653 TPtrC errorMsg = iDatabase.LastErrorMessage(); |
649 TPtrC errorMsg = iDatabase.LastErrorMessage(); |
654 TN_DEBUG2( "RThumbnailTransaction::CheckVersion() lastError %S, ret = %d" , &errorMsg); |
650 TN_DEBUG2( "RThumbnailTransaction::CheckVersion() lastError %S, ret = %d" , &errorMsg); |
655 #endif |
651 #endif |
696 stmt.ColumnText( column, imei); |
692 stmt.ColumnText( column, imei); |
697 } |
693 } |
698 |
694 |
699 stmt.Close(); |
695 stmt.Close(); |
700 |
696 |
701 if(ret < 0 ) |
697 if( rowStatus < 0 ) |
702 { |
698 { |
703 #ifdef _DEBUG |
699 #ifdef _DEBUG |
704 TPtrC errorMsg = iDatabase.LastErrorMessage(); |
700 TPtrC errorMsg = iDatabase.LastErrorMessage(); |
705 TN_DEBUG2( "RThumbnailTransaction::CheckImei() lastError %S, ret = %d" , &errorMsg); |
701 TN_DEBUG2( "RThumbnailTransaction::CheckImei() lastError %S, ret = %d" , &errorMsg); |
706 #endif |
702 #endif |
1264 TN_DEBUG1( "CThumbnailStore::StoreThumbnailL( public ) - encode jpg" ); |
1260 TN_DEBUG1( "CThumbnailStore::StoreThumbnailL( public ) - encode jpg" ); |
1265 |
1261 |
1266 HBufC8* data = NULL; |
1262 HBufC8* data = NULL; |
1267 CleanupStack::PushL( data ); |
1263 CleanupStack::PushL( data ); |
1268 |
1264 |
1269 CImageEncoder* encoder = CImageEncoder::DataNewL( data, KJpegMime(), CImageEncoder::EOptionAlwaysThread ); |
1265 CImageEncoder* encoder = NULL; |
1266 TRAPD( decErr, encoder = CExtJpegEncoder::DataNewL( CExtJpegEncoder::EHwImplementation, data, CImageEncoder::EOptionAlwaysThread ) ); |
|
1267 if ( decErr != KErrNone ) |
|
1268 { |
|
1269 TN_DEBUG2( "CThumbnailStore::StoreThumbnailL( public ) - HW CExtJpegEncoder failed %d", decErr); |
|
1270 |
|
1271 TRAPD( decErr, encoder = CExtJpegEncoder::DataNewL( CExtJpegEncoder::ESwImplementation, data, CImageEncoder::EOptionAlwaysThread ) ); |
|
1272 if ( decErr != KErrNone ) |
|
1273 { |
|
1274 TN_DEBUG2( "CThumbnailStore::StoreThumbnailL( public ) - SW CExtJpegEncoder failed %d", decErr); |
|
1275 |
|
1276 TRAPD( decErr, encoder = CImageEncoder::DataNewL( data, KJpegMime(), CImageEncoder::EOptionAlwaysThread ) ); |
|
1277 if ( decErr != KErrNone ) |
|
1278 { |
|
1279 TN_DEBUG2( "CThumbnailStore::StoreThumbnailL( public ) - CImageEncoder failed %d", decErr); |
|
1280 |
|
1281 User::Leave(decErr); |
|
1282 } |
|
1283 else |
|
1284 { |
|
1285 TN_DEBUG1( "CThumbnailStore::StoreThumbnailL( public ) - CImageEncoder created" ); |
|
1286 } |
|
1287 } |
|
1288 else |
|
1289 { |
|
1290 TN_DEBUG1( "CThumbnailStore::StoreThumbnailL( public ) - SW CExtJpegEncoder created" ); |
|
1291 } |
|
1292 } |
|
1293 else |
|
1294 { |
|
1295 TN_DEBUG1( "CThumbnailStore::StoreThumbnailL( public ) - HW CExtJpegEncoder created" ); |
|
1296 } |
|
1297 |
|
1270 CleanupStack::Pop( data ); |
1298 CleanupStack::Pop( data ); |
1271 CleanupStack::PushL( encoder ); |
1299 CleanupStack::PushL( encoder ); |
1272 |
1300 |
1273 CFrameImageData* frameImageData = CFrameImageData::NewL(); |
1301 CFrameImageData* frameImageData = CFrameImageData::NewL(); |
1274 CleanupStack::PushL( frameImageData ); |
1302 CleanupStack::PushL( frameImageData ); |