[Libreoffice-commits] core.git: sw/qa writerfilter/source

Miklos Vajna vmiklos at collabora.co.uk
Thu Jun 19 09:01:39 PDT 2014


 sw/qa/core/data/rtf/pass/abi2720.rtf           |  259 +++++++++++++++++++++++++
 writerfilter/source/rtftok/rtfdocumentimpl.cxx |    8 
 2 files changed, 264 insertions(+), 3 deletions(-)

New commits:
commit 3cab1adf19d553663685e8198f0ec3f258a37c36
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Thu Jun 19 17:49:29 2014 +0200

    abi#2720 RTF import: handle non-graphic object after a graphic one
    
    Change-Id: I9416b6e7cf3677006215fcbde458ed341c4e3e9e

diff --git a/sw/qa/core/data/rtf/pass/abi2720.rtf b/sw/qa/core/data/rtf/pass/abi2720.rtf
new file mode 100644
index 0000000..a337bda
--- /dev/null
+++ b/sw/qa/core/data/rtf/pass/abi2720.rtf
@@ -0,0 +1,259 @@
+{\rtf1
+\pard\plain \widctlpar\adjustright 
+\fs20\lang1031\cgrid 
+{\lang1024 
+{\shpgrp
+{\*\shpinst\shpleft0\shptop0\shpright14175\shpbottom9071\shpfhdr0\shpbxcolumn\shpbypara\shpwr3\shpwrk0\shpfblwtxt0\shpz1\shplid1032
+{\sp
+{\sn groupLeft}
+{\sv 1418}
+}
+{\sp
+{\sn groupTop}
+{\sv 1418}
+}
+{\sp
+{\sn groupRight}
+{\sv 15593}
+}
+{\sp
+{\sn groupBottom}
+{\sv 10489}
+}
+{\sp
+{\sn fFlipH}
+{\sv 0}
+}
+{\sp
+{\sn fFlipV}
+{\sv 0}
+}
+{\sp
+{\sn lidRegroup}
+{\sv 0}
+}
+{\shp
+{\*\shpinst\shplid1037
+{\sp
+{\sn relLeft}
+{\sv 2856}
+}
+{\sp
+{\sn relTop}
+{\sv 4008}
+}
+{\sp
+{\sn relRight}
+{\sv 3216}
+}
+{\sp
+{\sn relBottom}
+{\sv 4176}
+}
+{\sp
+{\sn fRelFlipH}
+{\sv 0}
+}
+{\sp
+{\sn fRelFlipV}
+{\sv 0}
+}
+{\sp
+{\sn shapeType}
+{\sv 0}
+}
+{\sp
+{\sn geoRight}
+{\sv 360}
+}
+{\sp
+{\sn geoBottom}
+{\sv 168}
+}
+{\sp
+{\sn shapePath}
+{\sv 4}
+}
+{\sp
+{\sn pVerticies}
+{\sv 8;10;(168,168);(84,108);(0,48);(24,24);(48,0);(264,0);(312,24);(360,48);(336,108);(312,168)}
+}
+{\sp
+{\sn pSegmentInfo}
+{\sv 2;9;16384;44288;8193
+;44288;8193;44288;8193;44032;32768}
+}
+{\sp
+{\sn fFillOK}
+{\sv 1}
+}
+{\sp
+{\sn fFilled}
+{\sv 0}
+}
+{\sp
+{\sn lineEndArrowhead}
+{\sv 2}
+}
+{\sp
+{\sn lineEndArrowWidth}
+{\sv 1}
+}
+{\sp
+{\sn lineEndArrowLength}
+{\sv 0}
+}
+{\sp
+{\sn fArrowheadsOK}
+{\sv 1}
+}
+{\sp
+{\sn lidRegroup}
+{\sv 0}
+}
+}
+}
+}
+{\shprslt
+{\*\do\dobxcolumn\dobypara\dodhgt8193\dppolygon\dppolycount4\dpptx0\dppty0\dpptx14175\dppty0\dpptx14175\dppty9071\dpptx0\dppty9071\dpx0\dpy0\dpxsize14175\dpysize9071
+\dpfillfgcr255\dpfillfgcg255\dpfillfgcb255\dpfillbgcr255\dpfillbgcg255\dpfillbgcb255\dpfillpat1\dplinew15\dplinecor0\dplinecog0\dplinecob0}
+}
+}
+}
+{\page }
+{\lang1024 
+{\shpgrp
+{\*\shpinst\shpleft0\shptop0\shpright14175\shpbottom9071\shpfhdr0\shpbxcolumn\shpbypara\shpwr3\shpwrk0\shpfblwtxt0\shpz2\shplid1038
+{\sp
+{\sn groupLeft}
+{\sv 1418}
+}
+{\sp
+{\sn groupTop}
+{\sv 1418}
+}
+{\sp
+{\sn groupRight}
+{\sv 15593}
+}
+{\sp
+{\sn groupBottom}
+{\sv 10489}
+}
+{\sp
+{\sn fFlipH}
+{\sv 0}
+}
+{\sp
+{\sn fFlipV}
+{\sv 0}
+}
+{\sp
+{\sn lidRegroup}
+{\sv 0}
+}
+{\shp
+{\*\shpinst\shplid1041
+{\sp
+{\sn relLeft}
+{\sv 8506}
+}
+{\sp
+{\sn relTop}
+{\sv 5954}
+}
+{\sp
+{\sn relRight}
+{\sv 15593}
+}
+{\sp
+{\sn relBottom}
+{\sv 10489}
+}
+{\sp
+{\sn fRelFlipH}
+{\sv 0}
+}
+{\sp
+{\sn fRelFlipV}
+{\sv 0}
+}
+{\sp
+{\sn shapeType}
+{\sv 202}
+}
+{\sp
+{\sn lTxid}
+{\sv 458752}
+}
+{\sp
+{\sn hspNext}
+{\sv 1041}
+}
+{\sp
+{\sn fFitShapeToText}
+{\sv 0}
+}
+{\shptxt \pard\plain
+\pard\plain \widctlpar\adjustright \f1\fs20\lang1031\cgrid 
+{\f1\dn28 
+{\pict
+{\*\picprop\shplid1025
+{\sp
+{\sn shapeType}
+{\sv 75}
+}
+{\sp
+{\sn fFlipH}
+{\sv 0}
+}
+{\sp
+{\sn fFlipV}
+{\sv 0}
+}
+{\sp
+{\sn pictureActive}
+{\sv 0}
+}
+{\sp
+{\sn fillColor}
+{\sv 268435473}
+}
+{\sp
+{\sn fFilled}
+{\sv 0}
+}
+{\sp
+{\sn fLine}
+{\sv 0}
+}
+}
+\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw1870\pich1199\picwgoal1060\pichgoal680\wmetafile8\bliptag-1230064263\blipupi-1583
+{\*\blipuid b6aeb57956b0ad18d349a83cd13b7dd7}
+010009000003700100000200150000000000050000000902000000000400000002010100050000000102ffffff0005000000090200000000040000002e011800
+05000000310201000000050000000b0200000000050000000c024004a0060e00000026060f001200ffffffff000008000000c0ffbaff6006fa030b0000002606
+0f000c004d617468547970650000e0000500000009020000000015000000fb0280fe0000000000009001010000000002001054696d6573204e657720526f6d61
+6e000000040000002d01000009000000320a80023400010000004300010109000000320a8002de04010000004100ea0015000000fb0220ff0000000000009001
+010000000002001054696d6573204e657720526f6d616e000023040000002d01010004000000f001000009000000320ad401d8050100000069003e0009000000
+320af50315030100000069003e0009000000320aee000403010000006e00700010000000fb0280fe0000000000009001000000020002001053796d626f6c0002
+040000002d01000004000000f001010009000000320a8002a401010000003d00d30010000000fb0220ff0000000000009001000000020002001053796d626f6c
+0002040000002d01010004000000f001000009000000320af5036a03010000003d007b0009000000320aee008303010000002d007b0010000000fb02c0fd0000
+000000009001000000020002001053796d626f6c0002040000002d01000004000000f001010009000000320ad702e20201000000e500980115000000fb0220ff
+0000000000009001000000000002001054696d6573204e657720526f6d616e000023040000002d01010004000000f001000009000000320af503e50301000000
+3100700009000000320aee00fd0301000000310070000a00000026060f000a00ffffffff01000000000010000000fb021000070000000000bc02000000000102022253797374656d0000040000002d01000004000000f0010100030000000000}
+}
+{\f1 
+\par }
+}
+}
+}
+}
+{\shprslt
+{\*\do\dobxcolumn\dobypara\dodhgt8194\dppolygon\dppolycount4\dpptx0\dppty0\dpptx14175\dppty0\dpptx14175\dppty9071\dpptx0\dppty9071\dpx0\dpy0\dpxsize14175\dpysize9071
+\dpfillfgcr255\dpfillfgcg255\dpfillfgcb255\dpfillbgcr255\dpfillbgcg255\dpfillbgcb255\dpfillpat1\dplinew15\dplinecor0\dplinecog0\dplinecob0}
+}
+}
+}
+{
+\par }
+}
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index d162aa4..a2b0c60 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -768,13 +768,15 @@ int RTFDocumentImpl::resolvePict(bool bInline)
 
     // Wrap it in an XShape.
     uno::Reference<drawing::XShape> xShape;
-    xShape = m_pSdrImport->getCurrentShape();//Mapper().PopPendingShape();
+    xShape = m_pSdrImport->getCurrentShape();
     if (xShape.is())
     {
         uno::Reference<lang::XServiceInfo> xSI(xShape, uno::UNO_QUERY_THROW);
-        assert(xSI->supportsService("com.sun.star.drawing.GraphicObjectShape"));
+        if(!xSI->supportsService("com.sun.star.drawing.GraphicObjectShape"))
+            xShape.clear();
     }
-    else
+
+    if (!xShape.is())
     {
         if (m_xModelFactory.is())
             xShape.set(m_xModelFactory->createInstance("com.sun.star.drawing.GraphicObjectShape"), uno::UNO_QUERY);


More information about the Libreoffice-commits mailing list