diff -r 9d4d3445ce6e -r 3d743e824514 imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailserversession.cpp --- a/imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailserversession.cpp Wed Sep 01 12:20:35 2010 +0100 +++ b/imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailserversession.cpp Tue Sep 14 21:55:34 2010 +0300 @@ -291,8 +291,26 @@ TInt sourceType = 0; TInt err = Server()->MimeTypeFromFileExt( params.iFileName, mimeType ); + // need to use recognizer + if (err == KErrNotFound) + { + Server()->Fs().ShareProtected(); + RFile64 file; + CleanupClosePushL( file ); + + User::LeaveIfError( file.Open( Server()->Fs(), params.iFileName, EFileShareReadersOrWriters )); + TN_DEBUG2( "CThumbnailServerSession::UpdateThumbnailsL - file handle opened for %S", ¶ms.iFileName ); + + mimeType = Server()->ResolveMimeTypeL(file); + + file.Close(); + TN_DEBUG1("CThumbnailServerSession::UpdateThumbnailsL - file handle closed"); + + CleanupStack::Pop( &file ); + } + // get missing sizes - if ( err == KErrNone && ( params.iControlFlags & EThumbnailGeneratePersistentSizesOnly ) != 0 ) + if ( ( params.iControlFlags & EThumbnailGeneratePersistentSizesOnly ) != 0 ) { sourceType = Server()->SourceTypeFromMimeType( mimeType );