diff options
author | Muthu Subramanian <sumuthu@novell.com> | 2011-05-02 16:57:21 +0530 |
---|---|---|
committer | Muthu Subramanian <sumuthu@novell.com> | 2011-05-02 17:01:45 +0530 |
commit | e784a2c0ef09c96711bca285c7700e6c398d3f62 (patch) | |
tree | 8b0804a147d5cb7cbe53da707aa955c85e1d741f /desktop | |
parent | 7b7c53a529a34285b4492393ac70eea16b83a8a4 (diff) |
n#690798: Fixed a crasher. Also, improved batch conversion.
* The pointer is not removed from the array before 'delete'
* FilterMatcher now uses (input) content to guess better.
Diffstat (limited to 'desktop')
-rw-r--r-- | desktop/source/app/dispatchwatcher.cxx | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/desktop/source/app/dispatchwatcher.cxx b/desktop/source/app/dispatchwatcher.cxx index e575ea8f3727..aff73d0984e3 100644 --- a/desktop/source/app/dispatchwatcher.cxx +++ b/desktop/source/app/dispatchwatcher.cxx @@ -33,6 +33,7 @@ #include <sfx2/docfilt.hxx> #include <sfx2/fcontnr.hxx> #include "osl/file.hxx" +#include "sfx2/app.hxx" #include <svl/fstathelper.hxx> #include "dispatchwatcher.hxx" @@ -96,10 +97,14 @@ static String impl_GetFilterFromExt( OUString aUrl, SfxFilterFlags nFlags, SfxMedium* pMedium = new SfxMedium( aUrl, STREAM_STD_READ, sal_False ); const SfxFilter *pSfxFilter = NULL; - SfxFilterMatcher aMatcher; if( nFlags == SFX_FILTER_EXPORT ) - aMatcher = SfxFilterMatcher( aAppl ); - aMatcher.GuessFilterIgnoringContent( *pMedium, &pSfxFilter, nFlags, 0 ); + { + SfxFilterMatcher( aAppl ).GuessFilterIgnoringContent( *pMedium, &pSfxFilter, nFlags, 0 ); + } + else + { + SFX_APP()->GetFilterMatcher().GuessFilter( *pMedium, &pSfxFilter, nFlags, 0 ); + } if( pSfxFilter ) aFilter = ( nFlags == SFX_FILTER_EXPORT ) ? pSfxFilter->GetFilterName() : pSfxFilter->GetServiceName(); |