diff options
author | Caolán McNamara <caolanm@redhat.com> | 2014-09-28 17:00:50 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2014-09-28 18:34:56 +0100 |
commit | be18133e84120625734a09380594ee89b23c4322 (patch) | |
tree | 09848dfd236a2a6a943dfc2bf7d92b7665fa889c | |
parent | 5fd7382651d64f77e8ad1d9a5c053f52f3641f9f (diff) |
Resolves: fdo#73608 bail out on loop in style sheet hierarchy
Change-Id: I03975d1ce8eaceceb4d5c263eb11c1521bcd57eb
-rw-r--r-- | sw/qa/core/data/ooxml/pass/fdo73608-2.docx | bin | 0 -> 11064 bytes | |||
-rw-r--r-- | writerfilter/source/dmapper/DomainMapperTableHandler.cxx | 4 |
2 files changed, 4 insertions, 0 deletions
diff --git a/sw/qa/core/data/ooxml/pass/fdo73608-2.docx b/sw/qa/core/data/ooxml/pass/fdo73608-2.docx Binary files differnew file mode 100644 index 000000000000..f5588782cd22 --- /dev/null +++ b/sw/qa/core/data/ooxml/pass/fdo73608-2.docx diff --git a/writerfilter/source/dmapper/DomainMapperTableHandler.cxx b/writerfilter/source/dmapper/DomainMapperTableHandler.cxx index 91e38609eb78..0287adf12479 100644 --- a/writerfilter/source/dmapper/DomainMapperTableHandler.cxx +++ b/writerfilter/source/dmapper/DomainMapperTableHandler.cxx @@ -90,6 +90,10 @@ PropertyMapPtr lcl_SearchParentStyleSheetAndMergeProperties(const StyleSheetEntr if(!pStyleSheet->sBaseStyleIdentifier.isEmpty()) { const StyleSheetEntryPtr pParentStyleSheet = pStyleSheetTable->FindStyleSheetByISTD( pStyleSheet->sBaseStyleIdentifier ); + //a loop in the style hierarchy, bail out + if (pParentStyleSheet == pStyleSheet) + return pRet; + pRet = lcl_SearchParentStyleSheetAndMergeProperties( pParentStyleSheet, pStyleSheetTable ); } else |