sw/source/uibase/uno/unomailmerge.cxx |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

New commits:
commit 59ef67e03bcf5b87f3dda12e89a97dc9bdcd0bb6
Author: Christoph Lutz <christoph.lutz...@cib.de>
Date:   Wed Apr 8 14:57:28 2015 +0000

    MM: fixed invalid UNO-Reference as return value of UNO MailMergeService
    
    This fix is regarding 9835bb562 "MM: export the SwDocShell mail merge via 
UNO":
    
    In case of using the new output type MailMergeType.SHELL, the UNO
    MailMergeService returned a XTextDocument instance that was not
    correctly initialized. In particular after calling 
doc.getCurrentController()
    (with doc = the returned instance) we recieved NULL. The reason was, that 
the
    previous implementation used to create a new SwXTextDocument instance
    instead of just returning the BaseModel that is already associated with
    the internal SwDocShell. This is fixed in this patch.
    
    I also tested this patch with the unit test sw/CppunitTest_sw_mailmerge
    and everything seems to be fine now. doc.getCurrentController() no longer
    returns NULL.
    
    Change-Id: Ic116f8f25ab9686ef56950e97ba202a55ab81fb8
    Reviewed-on: https://gerrit.libreoffice.org/15207
    Tested-by: Michael Stahl <mst...@redhat.com>
    Reviewed-by: Michael Stahl <mst...@redhat.com>
    (cherry picked from commit 098d08d6af951afa4f20f6f7883f6c9d34e87e11)
    Reviewed-on: https://gerrit.libreoffice.org/15209
    Reviewed-by: Caolán McNamara <caol...@redhat.com>
    Tested-by: Caolán McNamara <caol...@redhat.com>

diff --git a/sw/source/uibase/uno/unomailmerge.cxx 
b/sw/source/uibase/uno/unomailmerge.cxx
index 4687312..dfd199f 100644
--- a/sw/source/uibase/uno/unomailmerge.cxx
+++ b/sw/source/uibase/uno/unomailmerge.cxx
@@ -826,8 +826,7 @@ uno::Any SAL_CALL SwXMailMerge::execute(
 
     if (DBMGR_MERGE_SHELL == nMergeType)
     {
-        SwXTextDocument *xTextDoc = new SwXTextDocument( 
aMergeDesc.pMailMergeConfigItem->GetTargetView()->GetDocShell() );
-        return makeAny( Reference< XComponent >( xTextDoc->queryInterface( 
XComponent::static_type() ), css::uno::UNO_QUERY) );
+        return makeAny( 
aMergeDesc.pMailMergeConfigItem->GetTargetView()->GetDocShell()->GetBaseModel() 
);
     }
     else
         return makeAny( true );
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to