diff options
-rw-r--r-- | vcl/source/filter/svm/SvmReader.cxx | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/vcl/source/filter/svm/SvmReader.cxx b/vcl/source/filter/svm/SvmReader.cxx index fe05c3439719..bd69e7ece142 100644 --- a/vcl/source/filter/svm/SvmReader.cxx +++ b/vcl/source/filter/svm/SvmReader.cxx @@ -22,6 +22,7 @@ #include <tools/stream.hxx> #include <tools/vcompat.hxx> +#include <unotools/configmgr.hxx> #include <vcl/filter/SvmReader.hxx> #include <vcl/TypeSerializer.hxx> #include <vcl/dibtools.hxx> @@ -705,7 +706,21 @@ rtl::Reference<MetaAction> SvmReader::TextArrayHandler(const ImplMetaReadData* p } if (!aArray.empty()) + { + static const bool bFuzzing = utl::ConfigManager::IsFuzzing(); + if (bFuzzing) + { + for (size_t i = 0, nLen = aArray.size(); i < nLen; ++i) + { + if (aArray[i] < -4096 || aArray[i] > 4096) + { + SAL_WARN("vcl.gdi", "suspicious dx of: " << aArray[i]); + aArray[i] = 0; + } + } + } pAction->SetDXArray(std::move(aArray)); + } return pAction; } |