[ooo-build-commit] .: 13 commits - filter/source oox/prj unoxml/source

Jan Holesovsky kendy at kemper.freedesktop.org
Wed Sep 8 08:35:47 PDT 2010


 filter/source/config/fragments/filters/MathML_XML__Math_.xcu |    2 
 filter/source/pdf/pdfexport.cxx                              |   14 ++++--
 filter/source/xsltdialog/xmlfilterjar.cxx                    |    8 +++
 oox/prj/d.lst                                                |    1 
 unoxml/source/dom/node.cxx                                   |   23 ++++++++++-
 5 files changed, 39 insertions(+), 9 deletions(-)

New commits:
commit fde04d90ad6f9dc9ee5ceabef764226a7b6e6c97
Merge: 2d5dbd8... 6dd15e6...
Author: Jan Holesovsky <kendy at suse.cz>
Date:   Tue Sep 7 09:33:02 2010 +0200

    Merge commit 'ooo/OOO330_m6'

commit 6dd15e6df47bf325b181d7d5f4b3f6d6173078ff
Merge: c67d516... 1c171cd...
Author: Ivo Hinkelmann <ihi at openoffice.org>
Date:   Thu Aug 26 13:07:19 2010 +0200

    CWS-TOOLING: integrate CWS fwk152

commit c67d516cfab3e7e7ee2963ad392994450eb93eef
Merge: f4156eb... 982ecf0...
Author: Ivo Hinkelmann <ihi at openoffice.org>
Date:   Wed Aug 25 14:29:06 2010 +0200

    CWS-TOOLING: integrate CWS ooo33gsl06

commit f4156eb007d61093963788643ad52975ec0cc8e1
Merge: ef585a8... fdf636e...
Author: Ivo Hinkelmann <ihi at openoffice.org>
Date:   Wed Aug 25 12:49:35 2010 +0200

    CWS-TOOLING: integrate CWS mib18

commit ef585a86b8729b5f7d7f8ed818708bd36badcc07
Merge: d8c8ba2... 914d037...
Author: Kurt Zenker <kz at openoffice.org>
Date:   Wed Aug 18 12:47:07 2010 +0200

    CWS-TOOLING: integrate CWS jl157

commit d8c8ba2d381732ca71724f5a3f5ddfbebb1e9ce8
Merge: aa1c808... ad6d830...
Author: Kurt Zenker <kz at openoffice.org>
Date:   Wed Aug 18 12:43:13 2010 +0200

    CWS-TOOLING: integrate CWS mav56

commit 982ecf08d1833142536eccdc09e268b7d458153d
Author: Philipp Lohmann [pl] <Philipp.Lohmann at Oracle.COM>
Date:   Tue Aug 17 12:59:19 2010 +0200

    ooo33gsl06: #i113919# fix page range behavior for 3.3

diff --git a/filter/source/pdf/pdfexport.cxx b/filter/source/pdf/pdfexport.cxx
index b76f533..57777fe 100644
--- a/filter/source/pdf/pdfexport.cxx
+++ b/filter/source/pdf/pdfexport.cxx
@@ -791,7 +791,7 @@ sal_Bool PDFExport::Export( const OUString& rFile, const Sequence< PropertyValue
                 pPDFExtOutDevData->SetIsReduceImageResolution( mbReduceImageResolution );
                 pPDFExtOutDevData->SetIsExportNamedDestinations( mbExportBmkToDest );
 
-                Sequence< PropertyValue > aRenderOptions( 6 );
+                Sequence< PropertyValue > aRenderOptions( 5 );
                 aRenderOptions[ 0 ].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "RenderDevice" ) );
                 aRenderOptions[ 0 ].Value <<= Reference< awt::XDevice >( pXDevice );
                 aRenderOptions[ 1 ].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "ExportNotesPages" ) );
@@ -801,10 +801,14 @@ sal_Bool PDFExport::Export( const OUString& rFile, const Sequence< PropertyValue
                 aRenderOptions[ 2 ].Value <<= sal_True;
                 aRenderOptions[ 3 ].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "IsLastPage" ) );
                 aRenderOptions[ 3 ].Value <<= sal_False;
-                aRenderOptions[ 4 ].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "PageRange" ) );
-                aRenderOptions[ 4 ].Value <<= aPageRange;
-                aRenderOptions[ 5 ].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "IsSkipEmptyPages" ) );
-                aRenderOptions[ 5 ].Value <<= mbSkipEmptyPages;
+                aRenderOptions[ 4 ].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "IsSkipEmptyPages" ) );
+                aRenderOptions[ 4 ].Value <<= mbSkipEmptyPages;
+                #if 0
+                // #i113919# writer has to begun "PageRange" for itself changing its renderer count
+                // we should unify this behavior but not for OOo 3.3
+                aRenderOptions[ 5 ].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "PageRange" ) );
+                aRenderOptions[ 5 ].Value <<= aPageRange;
+                #endif
 
                 if( aPageRange.getLength() || !aSelection.hasValue() )
                 {
commit fdf636e667b123146033a30112006e9ff86caa6b
Merge: 990f9b8... aa1c808...
Author: Daniel Rentz <dr at openoffice.org>
Date:   Fri Aug 13 11:29:46 2010 +0200

    mib18: rebase to OOO330m4

commit ad6d830997c359dc6e12e2d77f196004d311352e
Author: Mikhail Voytenko <mav at openoffice.org>
Date:   Tue Aug 10 11:05:20 2010 +0200

    mav56: #163253# tread invalid path segments correctly

diff --git a/filter/source/xsltdialog/xmlfilterjar.cxx b/filter/source/xsltdialog/xmlfilterjar.cxx
index d6648bf..8605b14 100644
--- a/filter/source/xsltdialog/xmlfilterjar.cxx
+++ b/filter/source/xsltdialog/xmlfilterjar.cxx
@@ -101,6 +101,10 @@ static OUString encodeZipUri( const OUString& rURI )
 
 static Reference< XInterface > addFolder( Reference< XInterface >& xRootFolder, Reference< XSingleServiceFactory >& xFactory, const OUString& rName ) throw( Exception )
 {
+    if ( rName.equals( OUString( RTL_CONSTASCII_USTRINGPARAM( ".." ) ) )
+      || rName.equals( OUString( RTL_CONSTASCII_USTRINGPARAM( "." ) ) ) )
+        throw lang::IllegalArgumentException();
+
     Sequence< Any > aArgs(1);
     aArgs[0] <<= (sal_Bool)sal_True;
 
@@ -362,6 +366,10 @@ bool XMLFilterJarHelper::copyFile( Reference< XHierarchicalNameAccess > xIfc, OU
     {
         OUString szPackagePath( encodeZipUri( rURL.copy( sVndSunStarPackage.getLength() ) ) );
 
+        if ( ::comphelper::OStorageHelper::PathHasSegment( szPackagePath, OUString( RTL_CONSTASCII_USTRINGPARAM( ".." ) ) )
+          || ::comphelper::OStorageHelper::PathHasSegment( szPackagePath, OUString( RTL_CONSTASCII_USTRINGPARAM( "." ) ) ) )
+            throw lang::IllegalArgumentException();
+
         if( xIfc->hasByHierarchicalName( szPackagePath ) )
         {
             Reference< XActiveDataSink > xFileEntry;
commit 914d037413e3320acc21df9d688efabb3f926dee
Author: Joachim Lingner <jl at openoffice.org>
Date:   Thu Aug 5 16:09:11 2010 +0200

    jl157 #161910# inserting comments

diff --git a/unoxml/source/dom/node.cxx b/unoxml/source/dom/node.cxx
index 2428870..7d68433 100644
--- a/unoxml/source/dom/node.cxx
+++ b/unoxml/source/dom/node.cxx
@@ -52,6 +52,7 @@
 #include <algorithm>
 
 namespace {
+//see CNode::remove
     struct NodeMutex: public ::rtl::Static<osl::Mutex, NodeMutex> {};
 }
 
@@ -136,6 +137,17 @@ namespace DOM
 
     void CNode::remove(const xmlNodePtr aNode)
     {
+        //Using the guard here protects against races when at the same time
+        //CNode::get() is called. This fix helps in many cases but is still
+        //incorrect. remove is called from ~CNode. That is, while the object
+        //is being destructed it can still be obtained by calling CNode::get().
+        //Another bug currently prevents the correct destruction of CNodes. So
+        //the destructor is rarely called.
+        //
+        //Doing this right would probably mean to store WeakReferences in the
+        //map and also guard oder functions. To keep the risk at a minimum
+        //we keep this imperfect fix for the upcoming release and fix it later
+        //properly (http://qa.openoffice.org/issues/show_bug.cgi?id=113682)
         ::osl::MutexGuard guard(NodeMutex::get());
         nodemap_t::iterator i = CNode::theNodeMap.find(aNode);
         if (i != CNode::theNodeMap.end())
@@ -151,6 +163,7 @@ namespace DOM
         CNode* pNode = 0;
         if (aNode == NULL)
             return 0;
+        //see CNode::remove
         ::osl::MutexGuard guard(NodeMutex::get());
         //check whether there is already an instance for this node
         nodemap_t::const_iterator i = CNode::theNodeMap.find(aNode);
commit 1c171cd82e2d8bce9a018585d0d7395e042aadd4
Author: Mikhail Voytenko <mav at openoffice.org>
Date:   Thu Aug 5 12:54:16 2010 +0200

    fwk152: #i112895# integrate the patch

diff --git a/filter/source/config/fragments/filters/MathML_XML__Math_.xcu b/filter/source/config/fragments/filters/MathML_XML__Math_.xcu
index b6ab09a..7c80e41 100644
--- a/filter/source/config/fragments/filters/MathML_XML__Math_.xcu
+++ b/filter/source/config/fragments/filters/MathML_XML__Math_.xcu
@@ -1,5 +1,5 @@
     <node oor:name="MathML XML (Math)" oor:op="replace">
-        <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE ENCRYPTION</value></prop>
+        <prop oor:name="Flags"><value>IMPORT EXPORT TEMPLATE</value></prop>
         <prop oor:name="UIComponent"/>
         <prop oor:name="FilterService"/>
         <prop oor:name="UserData"><value></value></prop>
commit 8ebd262150dac474c2403d240753471f81b0b98c
Author: Joachim Lingner <jl at openoffice.org>
Date:   Thu Aug 5 12:22:22 2010 +0200

    jl157 #161910# make access to static map in unoxml threadsafe

diff --git a/unoxml/source/dom/node.cxx b/unoxml/source/dom/node.cxx
index f44e56d..2428870 100644
--- a/unoxml/source/dom/node.cxx
+++ b/unoxml/source/dom/node.cxx
@@ -43,13 +43,18 @@
 #include "attr.hxx"
 
 #include <com/sun/star/xml/sax/FastToken.hpp>
-
+#include "rtl/instance.hxx"
+#include "osl/mutex.hxx"
 #include "../events/eventdispatcher.hxx"
 #include "../events/mutationevent.hxx"
 
 #include <boost/bind.hpp>
 #include <algorithm>
 
+namespace {
+    struct NodeMutex: public ::rtl::Static<osl::Mutex, NodeMutex> {};
+}
+
 namespace DOM
 {
     void pushContext(Context& io_rContext)
@@ -131,6 +136,7 @@ namespace DOM
 
     void CNode::remove(const xmlNodePtr aNode)
     {
+        ::osl::MutexGuard guard(NodeMutex::get());
         nodemap_t::iterator i = CNode::theNodeMap.find(aNode);
         if (i != CNode::theNodeMap.end())
         {
@@ -145,7 +151,7 @@ namespace DOM
         CNode* pNode = 0;
         if (aNode == NULL)
             return 0;
-
+        ::osl::MutexGuard guard(NodeMutex::get());
         //check whether there is already an instance for this node
         nodemap_t::const_iterator i = CNode::theNodeMap.find(aNode);
         if (i != CNode::theNodeMap.end())
commit 990f9b8afae7e287a7b28c0b5db4575549dfe468
Author: Daniel Rentz <dr at openoffice.org>
Date:   Wed Aug 4 18:55:53 2010 +0200

    mib18: fix broken d.lst

diff --git a/oox/prj/d.lst b/oox/prj/d.lst
index 482a270..f20db06 100644
--- a/oox/prj/d.lst
+++ b/oox/prj/d.lst
@@ -36,7 +36,6 @@ mkdir: %_DEST%\inc%_EXT%\oox\xls
 ..\inc\oox\ole\vbaproject.hxx %_DEST%\inc%_EXT%\oox\ole\vbaproject.hxx
 ..\inc\oox\vml\vmldrawing.hxx %_DEST%\inc%_EXT%\oox\vml\vmldrawing.hxx
 ..\inc\oox\vml\vmlshape.hxx %_DEST%\inc%_EXT%\oox\vml\vmlshape.hxx
-..\inc\oox\xls\excelvbaproject.hxx %_DEST%\inc%_EXT%\oox\xls\excelvbaproject.hxx
 
 dos: sh -c "if test %OS% = MACOSX; then create-bundle %_DEST%\lib%_EXT%\*.dylib; fi"
 


More information about the ooo-build-commit mailing list