From: Włodzimierz Skiba Date: Mon, 2 Oct 2006 12:11:19 +0000 (+0000) Subject: Fixed crash caused by A=B?C:D used for returning wxObject derived type. X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/ce1f7f02c4a71b0fe56ef6647f52d16b1e3fe6e0?ds=inline Fixed crash caused by A=B?C:D used for returning wxObject derived type. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41561 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/univ/stdrend.cpp b/src/univ/stdrend.cpp index 4b25de7700..5a78545902 100644 --- a/src/univ/stdrend.cpp +++ b/src/univ/stdrend.cpp @@ -167,9 +167,20 @@ void wxStdRenderer::DrawBackground(wxDC& dc, int WXUNUSED(flags), wxWindow *window) { - wxColour colBg = col.Ok() ? col - : window ? m_scheme->GetBackground(window) - : wxSCHEME_COLOUR(m_scheme, CONTROL); + wxColour colBg; + + if (col.Ok()) + { + colBg = col; + } + else if (window) + { + colBg = m_scheme->GetBackground(window); + } + else + { + colBg = wxSCHEME_COLOUR(m_scheme, CONTROL); + } DrawSolidRect(dc, colBg, rect); }