summaryrefslogtreecommitdiff
path: root/sw/source/filter/html/swhtml.hxx
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2018-01-01 16:12:21 +0000
committerMichael Stahl <mstahl@redhat.com>2018-02-08 14:12:50 +0100
commit2a2436c34ff70a99c803eac503f6495dcdeffc2d (patch)
tree7a0f4ead48b989b42f335d1a11a41458ea628bc3 /sw/source/filter/html/swhtml.hxx
parent96af996b06f980006414dedcecc96978f5a31779 (diff)
ofz#4767 Bad-cast
Reviewed-on: https://gerrit.libreoffice.org/47235 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit 5670a9619b77a6a9e53b0cf20c059ea66ca5f450) Change-Id: Ibf8285efae7c570452954feb41a1a36bf44504a4 ofz: avoid deleting the table still being processed Change-Id: Ia92d469fd0e280bdc6470e780ab12b00366f0f8d Reviewed-on: https://gerrit.libreoffice.org/46902 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit f297b0d043e0767d85f00aa1e4cae5b036b0ac51) ofz#4753 Bad-cast, check all open tables Reviewed-on: https://gerrit.libreoffice.org/47199 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit 80fc91db239869b513f47866f45d8a43fb98fe16) Change-Id: Ie6e2fb9f2e16e021a4719c418f52ce074c359904 CurrentTableInPaM->PendingTableInPaM Change-Id: Ic8b48d3b3e3f87e9ac3e8a6bb832f8e8dfe8ab7d (cherry picked from commit 2ed6eba4f99681fe717741ddc1534ed3ccc15e82) ofz#4848 Null-dereference READ Change-Id: I632aca7e3f59b7edf48c8c35eff4abf1946af652 (cherry picked from commit d4d0b1a2b9f11fb7629559e08c345697ba129c04) ofz#4817 Bad-cast Change-Id: I5dc9c66ce17f6401fbc9683cf8b10bf62755a166 Reviewed-on: https://gerrit.libreoffice.org/47236 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit 9e269ef68e33fc9da154f6694be7cbcd5e3b4bfc) ofz#4872 Null-dereference READ we're going to need a bigger boat Reviewed-on: https://gerrit.libreoffice.org/47269 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit dfc72242e5bf67bdd5127bf38ed2ad5b3e49cea3) Change-Id: Ie4ee3ae1ac9f906ca3faec412bbafc0c6a911aaf ofz#4971 Bad-cast Reviewed-on: https://gerrit.libreoffice.org/47466 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit c75c3b2fdab5614664215e52d85657472ec86f05) Change-Id: Icf66aa82e72a2b9f24f590b84bb0441ebf09463f ofz#5007 Null-dereference READ Reviewed-on: https://gerrit.libreoffice.org/47537 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit 6d05e0945054459ed04d50ae16731f933be48664) Change-Id: I830483071ce481fd14b0d1227c90e492e125f35e ofz#5235 Bad-cast Change-Id: I041f09f37941a92ccee3f0ebf9e5a950dee0c52f Reviewed-on: https://gerrit.libreoffice.org/47747 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit 710cf469bf0e43a021fc1a24a80745bc602368ef) ofz#5909 Null-dereference READ Reviewed-on: https://gerrit.libreoffice.org/49218 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit 5090d575117fbe6ced75dc45c514f8d990523251) Change-Id: I830d3e8bda517e7681cea7481c32457486ced693 ofz#6064 clear footnotes from tobe-deleted paragraph Change-Id: I33f75adab35d43a4bbf51e33a0abcb5daeca93a3 ofz: Null-deref Change-Id: I9992191fe5b4cfd771cc36a61d0ebaa8a9e6e9db Reviewed-on: https://gerrit.libreoffice.org/46743 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit e867b393ef95cb9bec7f68787771dfa329b00bea) ofz#4728 Null-deref Reviewed-on: https://gerrit.libreoffice.org/47000 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit f2e0c18cd44fff1e1b79924f582ced400fb00dad) Change-Id: Ide91a63424f864e2913b8268c4eca7961ba54572 Reviewed-on: https://gerrit.libreoffice.org/49357 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
Diffstat (limited to 'sw/source/filter/html/swhtml.hxx')
-rw-r--r--sw/source/filter/html/swhtml.hxx42
1 files changed, 42 insertions, 0 deletions
diff --git a/sw/source/filter/html/swhtml.hxx b/sw/source/filter/html/swhtml.hxx
index 6e84380cdfe1..5ca8ec1d9ab6 100644
--- a/sw/source/filter/html/swhtml.hxx
+++ b/sw/source/filter/html/swhtml.hxx
@@ -408,6 +408,7 @@ class SwHTMLParser : public SfxHTMLParser, public SwClient
SwNodeIndex *m_pSttNdIdx;
HTMLTable *m_pTable; // current "outermost" table
+ std::vector<HTMLTable*> m_aTables;
SwHTMLForm_Impl *m_pFormImpl; // current form
SdrObject *m_pMarquee; // current marquee
SwField *m_pField; // current field
@@ -647,6 +648,10 @@ class SwHTMLParser : public SfxHTMLParser, public SwClient
// tags realized via character styles
void NewCharFormat( HtmlTokenId nToken );
+ void ClearFootnotesInRange(const SwNodeIndex& rSttIdx, const SwNodeIndex& rEndIdx);
+
+ void DeleteSection(SwStartNode* pSttNd);
+
// <SDFIELD>
public:
static SvxNumType GetNumType( const OUString& rStr, SvxNumType eDfltType );
@@ -861,6 +866,8 @@ private:
bool HasCurrentParaFlys( bool bNoSurroundOnly = false,
bool bSurroundOnly = false ) const;
+ bool PendingObjectsInPaM(SwPaM& rPam) const;
+
public: // used in tables
// Create brush item (with new) or 0
@@ -898,6 +905,18 @@ public:
virtual bool ParseMetaOptions( const css::uno::Reference<css::document::XDocumentProperties>&,
SvKeyValueIterator* ) override;
+
+
+ void RegisterHTMLTable(HTMLTable* pNew)
+ {
+ m_aTables.push_back(pNew);
+ }
+
+ void DeregisterHTMLTable(HTMLTable* pOld)
+ {
+ m_aTables.erase(std::remove(m_aTables.begin(), m_aTables.end(), pOld));
+ }
+
};
struct SwPendingStackData
@@ -977,6 +996,29 @@ inline void SwHTMLParser::PushContext( HTMLAttrContext *pCntxt )
m_aContexts.push_back( pCntxt );
}
+class SwTextFootnote;
+
+struct SwHTMLTextFootnote
+{
+ OUString sName;
+ SwTextFootnote* pTextFootnote;
+ SwHTMLTextFootnote(const OUString &rName, SwTextFootnote* pInTextFootnote)
+ : sName(rName)
+ , pTextFootnote(pInTextFootnote)
+ {
+ }
+};
+
+struct SwHTMLFootEndNote_Impl
+{
+ std::vector<SwHTMLTextFootnote> aTextFootnotes;
+
+ OUString sName;
+ OUString sContent; // information for the last footnote
+ bool bEndNote;
+ bool bFixed;
+};
+
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */