sw/qa/core/data/rtf/pass/fdo72204.rtf       |   48 ++++++++++++++++++++++++++++
 writerfilter/source/rtftok/rtfsdrimport.cxx |    4 +-
 2 files changed, 51 insertions(+), 1 deletion(-)

New commits:
commit 3e199f81473d1f85a75238ac03d38a220f3ab818
Author: Miklos Vajna <vmik...@collabora.co.uk>
Date:   Fri Dec 20 16:51:35 2013 +0100

    fdo#72204 RTF import: fix crash on rotated, but not imported groupshape
    
    In case the groupshape contains textboxes and they contain table, we
    don't import the groupshape itself, just the children, as drawinglayer
    rectangles wouldn't handle tables.
    
    If that's the case, don't try to apply properties on the groupshape, as
    that would crash (the Writer drawpage implements XShapes, but not the
    XShape interface).
    
    Change-Id: Ie34039170314b772dd050eb354681cfaec61c1fa

diff --git a/sw/qa/core/data/rtf/pass/fdo72204.rtf 
b/sw/qa/core/data/rtf/pass/fdo72204.rtf
new file mode 100644
index 0000000..052a639
--- /dev/null
+++ b/sw/qa/core/data/rtf/pass/fdo72204.rtf
@@ -0,0 +1,48 @@
+{\rtf1
+{\shpgrp
+{\*\shpinst\shpleft-950\shptop156\shpright1583\shpbottom2942\shpfhdr0\shpbxcolumn\shpbxignore\shpbypara\shpbyignore\shpwr3\shpwrk0\shpfblwtxt0\shpz0\shplid1036
+{\sp{\sn groupLeft}{\sv 1621}}
+{\sp{\sn groupTop}{\sv 2621}}
+{\sp{\sn groupRight}{\sv 4154}}
+{\sp{\sn groupBottom}{\sv 5407}}
+{\sp{\sn rotation}{\sv 0}}
+{\shp
+{\*\shpinst\shplid1037
+{\sp{\sn relLeft}{\sv 1621}}
+{\sp{\sn relTop}{\sv 2621}}
+{\sp{\sn relRight}{\sv 4154}}
+{\sp{\sn relBottom}{\sv 5092}}
+{\sp{\sn shapeType}{\sv 202}}
+{\shptxt \ltrpar \trowd 
+\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl \cellx567
+\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 
\clbrdrr\brdrs\brdrw10 \cellx1134\clbrdrt\brdrtbl \clbrdrl\brdrnone 
\clbrdrb\brdrtbl \clbrdrr\brdrtbl 
+\cellx1701\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl 
\cltxlrtb\cellx2268\pard\plain \ltrpar\ql 
+\intbl \rtlch \afs22\alang1025 \ltrch 
\lang1038\langfe1033\loch\hich\dbch\cgrid\langnp1038\langfenp1033 
+{\rtlch \ltrch 
+\hich\dbch\loch\f37 a)\cell }
+\pard \ltrpar\qc \intbl 
+{\rtlch \ltrch 
+\cell \cell \cell }
+\pard \ltrpar\ql \intbl 
+{\rtlch \ltrch \trowd 
+\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl \cellx567
+\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 
\clbrdrr\brdrs\brdrw10 \cellx1134\clbrdrt\brdrtbl \clbrdrl\brdrnone 
\clbrdrb\brdrtbl \clbrdrr\brdrtbl 
+\cellx1701\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl 
\cltxlrtb\cellx2268\row }
+\trowd \clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl 
\cellx567
+\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 
\clbrdrr\brdrs\brdrw10 \cellx1134\clbrdrt\brdrtbl \clbrdrl\brdrnone 
\clbrdrb\brdrtbl \clbrdrr\brdrtbl 
+\cellx1701\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl 
\cltxlrtb\cellx2268\pard \ltrpar\qc 
+\intbl 
+{\rtlch \ltrch \cell \cell \cell \cell }
+\pard \ltrpar\ql \intbl 
+{\rtlch \ltrch \trowd 
+\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl \cellx567
+\clbrdrt\brdrs\brdrw10 \clbrdrl\brdrs\brdrw10 \clbrdrb\brdrs\brdrw10 
\clbrdrr\brdrs\brdrw10 \cellx1134\clbrdrt\brdrtbl \clbrdrl\brdrnone 
\clbrdrb\brdrtbl \clbrdrr\brdrtbl 
+\cellx1701\clbrdrt\brdrtbl \clbrdrl\brdrtbl \clbrdrb\brdrtbl \clbrdrr\brdrtbl 
\cltxlrtb\cellx2268\row }
+\pard \ltrpar\ql \itap0\par
+}
+}
+}
+}
+}
+\par
+}
diff --git a/writerfilter/source/rtftok/rtfsdrimport.cxx 
b/writerfilter/source/rtftok/rtfsdrimport.cxx
index aaaa4ee..3d9df8b 100644
--- a/writerfilter/source/rtftok/rtfsdrimport.cxx
+++ b/writerfilter/source/rtftok/rtfsdrimport.cxx
@@ -704,7 +704,9 @@ void RTFSdrImport::append(OUString aKey, OUString aValue)
 
 void RTFSdrImport::appendGroupProperty(OUString aKey, OUString aValue)
 {
-    applyProperty(uno::Reference<drawing::XShape>(m_aParents.top(), 
uno::UNO_QUERY), aKey, aValue);
+    uno::Reference<drawing::XShape> xShape(m_aParents.top(), uno::UNO_QUERY);
+    if (xShape.is())
+        applyProperty(xShape, aKey, aValue);
 }
 
 } // namespace rtftok
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to