[Libreoffice-commits] core.git: sfx2/source

Michael Stahl mstahl at redhat.com
Mon May 19 09:54:01 PDT 2014


 sfx2/source/bastyp/fltfnc.cxx |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

New commits:
commit 805fd1ca343d6295b8114a24cc29bdac332f266d
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon May 19 18:31:54 2014 +0200

    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

diff --git a/sfx2/source/bastyp/fltfnc.cxx b/sfx2/source/bastyp/fltfnc.cxx
index 072ded5c..33d32e2 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:


More information about the Libreoffice-commits mailing list