diff --git a/hwpfilter/source/hwpreader.cxx b/hwpfilter/source/hwpreader.cxx index 3560d6d4b334..a6df282ede5b 100644 --- a/hwpfilter/source/hwpreader.cxx +++ b/hwpfilter/source/hwpreader.cxx @@ -29,6 +29,7 @@ #include #include #include +#include #include "fontmap.hxx" #include "formula.h" @@ -40,6 +41,7 @@ #include #include #include +#include // xmloff/xmlkyd.hxx constexpr OUStringLiteral sXML_CDATA = u"CDATA"; @@ -955,6 +957,12 @@ void HwpReader::makeMasterStyles() PageSetting *pPrevSet = nullptr; PageSetting *pPage = nullptr; + if (nMax > SAL_MAX_UINT16 && utl::ConfigManager::IsFuzzing()) + { + SAL_WARN("filter.hwp", "too many pages: " << nMax << " clip to " << SAL_MAX_UINT16); + nMax = SAL_MAX_UINT16; + } + for( i = 1; i <= nMax ; i++ ) { if( i == 1 ) diff --git a/include/sal/log-areas.dox b/include/sal/log-areas.dox index 4e9c3105c844..f6b67006b255 100644 --- a/include/sal/log-areas.dox +++ b/include/sal/log-areas.dox @@ -227,6 +227,7 @@ certain functionality. @li @c filter.config @li @c filter.eps +@li @c filter.hwp - Hangul word processor import @li @c filter.icgm @li @c filter.ms - escher import/export @li @c filter.odfflatxml