diff options
author | Caolán McNamara <caolanm@redhat.com> | 2016-05-08 17:25:33 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2016-05-08 17:30:47 +0100 |
commit | 4e509d80ee7b22ce0e79d62f7afb7a008726fe5f (patch) | |
tree | 5a3cc3cd182123c74c7f042b532a7b151f56eb5e /lotuswordpro | |
parent | ace0b3bdec391aa170fe95c16a1a5d4a07d052df (diff) |
fftester: fail on double parse of the same table
Change-Id: I3e462cdc8812d0ac55d9896d2b04ace34a6c4670
Diffstat (limited to 'lotuswordpro')
-rw-r--r-- | lotuswordpro/qa/cppunit/data/fail/reference-3.lwp | bin | 0 -> 62632 bytes | |||
-rw-r--r-- | lotuswordpro/source/filter/lwptablelayout.cxx | 17 |
2 files changed, 10 insertions, 7 deletions
diff --git a/lotuswordpro/qa/cppunit/data/fail/reference-3.lwp b/lotuswordpro/qa/cppunit/data/fail/reference-3.lwp Binary files differnew file mode 100644 index 000000000000..6076b43b75bf --- /dev/null +++ b/lotuswordpro/qa/cppunit/data/fail/reference-3.lwp diff --git a/lotuswordpro/source/filter/lwptablelayout.cxx b/lotuswordpro/source/filter/lwptablelayout.cxx index 4eaa7ce3955a..0c8cbb2fbe73 100644 --- a/lotuswordpro/source/filter/lwptablelayout.cxx +++ b/lotuswordpro/source/filter/lwptablelayout.cxx @@ -754,9 +754,8 @@ void LwpTableLayout::RegisterStyle() // so the NULL pointer cause sodc freeze. Add code to check the // the pointer. //New Code - if( GetFoundry() && GetTable() ) - - PutCellVals( GetFoundry(),GetTable()->GetObjectID() ); + if (GetFoundry() && GetTable()) + PutCellVals(GetFoundry(), GetTable()->GetObjectID()); } /** * @short read table layout @@ -765,11 +764,15 @@ void LwpTableLayout::RegisterStyle() void LwpTableLayout::ParseTable() { // get super table layout - LwpSuperTableLayout * pSuper = GetSuperTableLayout(); - if(!pSuper) + LwpSuperTableLayout* pSuper = GetSuperTableLayout(); + if (!pSuper) { - assert(false); - return; + throw std::runtime_error("missing super table"); + } + + if (m_pXFTable.get()) + { + throw std::runtime_error("this table is already parsed"); } // set name of object |