svx/source/dialog/charmap.cxx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
New commits: commit 23e3bff528ab38c8d5c6d401b672a0033cef2bd4 Author: Xisco Fauli <xiscofa...@libreoffice.org> AuthorDate: Tue May 24 21:49:20 2022 +0200 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Wed May 25 12:10:00 2022 +0200 svx: fix one more EXCEPTION_INT_DIVIDE_BY_ZERO See https://crashreport.libreoffice.org/stats/signature/SvxShowCharSet::PixelToMapIndex(Point%20const%20&) Change-Id: Ied5698fd47220fae54d72be263c3eeed5fb77911 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134890 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> diff --git a/svx/source/dialog/charmap.cxx b/svx/source/dialog/charmap.cxx index b806903ee184..d7a7898d5342 100644 --- a/svx/source/dialog/charmap.cxx +++ b/svx/source/dialog/charmap.cxx @@ -376,7 +376,9 @@ Point SvxShowCharSet::MapIndexToPixel( int nIndex ) const int SvxShowCharSet::PixelToMapIndex( const Point& point) const { int nBase = FirstInView(); - return (nBase + ((point.X() - m_nXGap)/nX) + ((point.Y() - m_nYGap)/nY) * COLUMN_COUNT); + int x = nX == 0 ? 0 : (point.X() - m_nXGap)/nX; + int y = nY == 0 ? 0 : (point.Y() - m_nYGap)/nY; + return (nBase + x + y * COLUMN_COUNT); } bool SvxShowCharSet::KeyInput(const KeyEvent& rKEvt)