diff -r ffa62e555b02 -r b790c5b3d11f imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailserversession.cpp --- a/imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailserversession.cpp Mon May 03 12:48:51 2010 +0300 +++ b/imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailserversession.cpp Fri May 14 16:10:12 2010 +0300 @@ -736,22 +736,31 @@ { if( bitmapSize.iWidth < bitmapSize.iHeight ) { - TInt height = (*missingSizes)[i].iSize.iHeight; - (*missingSizes)[i].iSize.iHeight = (*missingSizes)[i].iSize.iWidth; - (*missingSizes)[i].iSize.iWidth = height; - TN_DEBUG1( "CThumbnailServerSession::RequestSetThumbnailByBitmapL() - portrait"); + TThumbnailSize size = (*missingSizes)[ i ].iType; + + if ( size == EFullScreenThumbnailSize || + size == EVideoFullScreenThumbnailSize || + size == EAudioFullScreenThumbnailSize || + size == EImageFullScreenThumbnailSize ) + { + TInt height = (*missingSizes)[i].iSize.iHeight; + (*missingSizes)[i].iSize.iHeight = (*missingSizes)[i].iSize.iWidth; + (*missingSizes)[i].iSize.iWidth = height; + + TN_DEBUG1( "CThumbnailServerSession::RequestSetThumbnailByBitmapL() - portrait"); + } } - + CThumbnailScaleTask* scaleTask = CThumbnailScaleTask::NewL( Server()->Processor(), - *Server(), params.iTargetUri, bitmap, bitmapSize, - (*missingSizes)[i].iSize, (*missingSizes)[i].iCrop, params.iDisplayMode, - KMaxPriority, KNullDesC, (*missingSizes)[i].iType, params.iModified, EFalse, EFalse, - reqId); + *Server(), params.iTargetUri, bitmap, bitmapSize, + (*missingSizes)[i].iSize, (*missingSizes)[i].iCrop, params.iDisplayMode, + KMaxPriority, KNullDesC, (*missingSizes)[i].iType, params.iModified, EFalse, EFalse, + reqId); CleanupStack::PushL( scaleTask ); scaleTask->SetDoStore( ETrue ); Server()->Processor().AddTaskL( scaleTask ); CleanupStack::Pop( scaleTask ); - + // completion to first task, because task processor works like stack if( i == 0 ) {