diff options
author | Kohei Yoshida <kohei.yoshida@collabora.com> | 2013-11-22 20:57:40 -0500 |
---|---|---|
committer | Michael Meeks <michael.meeks@collabora.com> | 2013-12-02 12:32:02 +0000 |
commit | 934941a4cf7c9ee7df69f03e6f0be246499d587f (patch) | |
tree | fc37e7a46e181ddee1d42a6fd0aedc8cd1290fc7 /include | |
parent | 1ab139fdbe9a7ed3b781730dfecb83a98e0b671b (diff) |
Allow worker threads to use their own FastParser instances.
To prevent deadlock during threaded sheet stream parsing. It now
deadlocks at a different place.
Conflicts:
oox/source/core/xmlfilterbase.cxx
sc/source/filter/oox/workbookfragment.cxx
Change-Id: I0ba0f2c9a257e71b0a340ab14e369b06d5fd8829
Diffstat (limited to 'include')
-rw-r--r-- | include/oox/core/xmlfilterbase.hxx | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/include/oox/core/xmlfilterbase.hxx b/include/oox/core/xmlfilterbase.hxx index 87234fb22328..76eb091b3f2e 100644 --- a/include/oox/core/xmlfilterbase.hxx +++ b/include/oox/core/xmlfilterbase.hxx @@ -56,8 +56,7 @@ namespace oox { namespace core { class FragmentHandler; - -// ============================================================================ +class FastParser; struct TextField { com::sun::star::uno::Reference< com::sun::star::text::XText > xText; @@ -107,7 +106,8 @@ public: @return True, if the fragment could be imported. */ - bool importFragment( const ::rtl::Reference< FragmentHandler >& rxHandler ); + bool importFragment( const rtl::Reference<FragmentHandler>& rxHandler ); + bool importFragment( const rtl::Reference<FragmentHandler>& rxHandler, FastParser& rParser ); /** Imports a fragment into an xml::dom::XDocument. @@ -231,6 +231,8 @@ public: void importDocumentProperties(); + FastParser* createParser() const; + protected: virtual ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream > implGetInputStream( utl::MediaDescriptor& rMediaDesc ) const; |