From d87abd132e037ff836e9744e1a79c265abd86b6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= Date: Fri, 31 Jul 2020 16:36:50 +0200 Subject: [PATCH] Do not try to create bitmap for default constructed Caret If a Caret is default-constructed, the width and height are still 0, and the wxBitmap::Create implementations expect valid sizes. The same applies for the bitmap after a size change. --- src/generic/caret.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/generic/caret.cpp b/src/generic/caret.cpp index 0f5aa7ac51..603888570b 100644 --- a/src/generic/caret.cpp +++ b/src/generic/caret.cpp @@ -103,7 +103,8 @@ void wxCaret::InitGeneric() #ifndef wxHAS_CARET_USING_OVERLAYS m_xOld = m_yOld = -1; - m_bmpUnderCaret.Create(m_width, m_height); + if (m_width && m_height) + m_bmpUnderCaret.Create(m_width, m_height); #endif } @@ -174,7 +175,10 @@ void wxCaret::DoSize() m_overlay.Reset(); #else // Change bitmap size - m_bmpUnderCaret = wxBitmap(m_width, m_height); + if (m_width && m_height) + m_bmpUnderCaret = wxBitmap(m_width, m_height); + else + m_bmpUnderCaret = wxBitmap(); #endif if (countVisible > 0) {