xmloff/source/text/XMLTextFrameContext.cxx |   12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

New commits:
commit 3da29e6813a64b97fb56436a80dae7fafc39eba3
Author: Michael Stahl <mst...@redhat.com>
Date:   Mon Dec 2 23:28:20 2013 +0100

    fdo#71450 fdo#71698: ODF import: fix frame name corner cases
    
    Trying to set a name that is already in use will throw an exception (and
    set a different, generated name); if there is actually no name in the
    file then there's no point trying to set anything.
    
    (regression from b69d152cfa1da868ba960345d72ba78f9f8e1b35)
    
    Change-Id: Ie54d4a830cc23e2853a6efeb81f77dcc788192ea
    (cherry picked from commit 8171e713e74e3d09e86592c28abfe05d0400c071)
    Reviewed-on: https://gerrit.libreoffice.org/6907
    Reviewed-by: Miklos Vajna <vmik...@collabora.co.uk>
    Tested-by: Miklos Vajna <vmik...@collabora.co.uk>
    (cherry picked from commit 0763cf6ed7bdc629e59b5df757b9ef4f5273f393)
    Reviewed-on: https://gerrit.libreoffice.org/6911
    Reviewed-by: Eike Rathke <er...@redhat.com>
    Reviewed-by: Caolán McNamara <caol...@redhat.com>
    Tested-by: Caolán McNamara <caol...@redhat.com>

diff --git a/xmloff/source/text/XMLTextFrameContext.cxx 
b/xmloff/source/text/XMLTextFrameContext.cxx
index 3ca7e86..745ff63 100644
--- a/xmloff/source/text/XMLTextFrameContext.cxx
+++ b/xmloff/source/text/XMLTextFrameContext.cxx
@@ -1291,12 +1291,20 @@ void XMLTextFrameContext_Impl::SetHyperlink( const 
OUString& rHRef,
 void XMLTextFrameContext_Impl::SetName()
 {
     Reference<XNamed> xNamed(xPropSet, UNO_QUERY);
-    if (xNamed.is())
+    if (!m_sOrigName.isEmpty() && xNamed.is())
     {
         OUString const name(xNamed->getName());
         if (name != m_sOrigName)
         {
-            xNamed->setName(m_sOrigName);
+            try
+            {
+                xNamed->setName(m_sOrigName);
+            }
+            catch (uno::Exception const& e)
+            {   // fdo#71698 document contains 2 frames with same draw:name
+                SAL_INFO("xmloff.text", "SetName(): exception setting \""
+                        << m_sOrigName << "\": " << e.Message);
+            }
         }
     }
 }
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to