diff options
author | Michael Stahl <mstahl@redhat.com> | 2014-05-19 18:31:54 +0200 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2014-05-19 18:49:46 +0200 |
commit | 805fd1ca343d6295b8114a24cc29bdac332f266d (patch) | |
tree | 211aae439d8a9df0d4927b04fff0a22f2c03b223 /sfx2 | |
parent | 184e4ef35641403fd293262ee413ceee37b3761a (diff) |
fdo#78742: SfxFilterMatcher: respect requested document service if set
sfx2::DocumentInserter::CreateMediumList() creates a SfxFilterMatcher
that should match Writer filters only, but actually Calc filters may be
returned; check that the document service matches.
(regression from 3da8f3680556e0163f660a0a159930337c8c32ff)
Change-Id: I6208d38c1110355105aa5d1ffa1b57142193a4d7
Diffstat (limited to 'sfx2')
-rw-r--r-- | sfx2/source/bastyp/fltfnc.cxx | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sfx2/source/bastyp/fltfnc.cxx b/sfx2/source/bastyp/fltfnc.cxx index 072ded5cf9e3..33d32e261bfd 100644 --- a/sfx2/source/bastyp/fltfnc.cxx +++ b/sfx2/source/bastyp/fltfnc.cxx @@ -497,7 +497,9 @@ sal_uInt32 SfxFilterMatcher::GuessFilterControlDefaultUI( SfxMedium& rMedium, c // Type detection returned a suitable filter for this. Use it. pFilter = SfxFilter::GetFilterByName(aFilterName); - if (!pFilter) + // fdo#78742 respect requested document service if set + if (!pFilter || (!m_rImpl.aName.isEmpty() + && m_rImpl.aName != pFilter->GetServiceName())) { // detect filter by given type // In case of this matcher is bound to a particular document type: |