diff options
Diffstat (limited to 'emfio/source/reader/wmfreader.cxx')
-rw-r--r-- | emfio/source/reader/wmfreader.cxx | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/emfio/source/reader/wmfreader.cxx b/emfio/source/reader/wmfreader.cxx index 1d67f5c52e98..3f8af75bbd50 100644 --- a/emfio/source/reader/wmfreader.cxx +++ b/emfio/source/reader/wmfreader.cxx @@ -165,6 +165,12 @@ namespace emfio aTL = ReadYX(); aBR.AdjustX( -1 ); aBR.AdjustY( -1 ); + if (aTL.X() > aBR.X() || aTL.Y() > aBR.Y()) + { + SAL_WARN("vcl.wmf", "broken rectangle"); + mpInputStream->SetError( SVSTREAM_FILEFORMAT_ERROR ); + return tools::Rectangle(); + } return tools::Rectangle( aTL, aBR ); } |