From f125ccf24048cef9a1fcf7d38edaab8225d41564 Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Thu, 22 Aug 2002 08:47:34 +0000 Subject: [PATCH] fix when bitmap is not valid git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16674 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/mac/bmpbuttn.cpp | 10 +++++++--- src/mac/carbon/bmpbuttn.cpp | 10 +++++++--- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/mac/bmpbuttn.cpp b/src/mac/bmpbuttn.cpp index 5d03c4f8d3..7f89c97abd 100644 --- a/src/mac/bmpbuttn.cpp +++ b/src/mac/bmpbuttn.cpp @@ -52,14 +52,18 @@ bool wxBitmapButton::Create(wxWindow *parent, wxWindowID id, const wxBitmap& bit Rect bounds ; Str255 title ; - m_bmpNormal = bitmap; - wxBitmapRefData * bmap = (wxBitmapRefData*) ( m_bmpNormal.GetRefData()) ; + m_bmpNormal = bitmap; + wxBitmapRefData * bmap = NULL ; + + if ( m_bmpNormal.Ok() ) + bmap = (wxBitmapRefData*) ( m_bmpNormal.GetRefData()) ; MacPreControlCreate( parent , id , "" , pos , wxSize( width , height ) ,style, validator , name , &bounds , title ) ; m_macControl = ::NewControl( MAC_WXHWND(parent->MacGetRootWindow()) , &bounds , title , false , 0 , kControlBehaviorOffsetContents + - ( bmap->m_bitmapType == kMacBitmapTypeIcon ? kControlContentCIconHandle : kControlContentPictHandle ) , 0, + ( bmap && bmap->m_bitmapType == kMacBitmapTypeIcon ? + kControlContentCIconHandle : kControlContentPictHandle ) , 0, (( style & wxBU_AUTODRAW ) ? kControlBevelButtonSmallBevelProc : kControlBevelButtonNormalBevelProc ), (long) this ) ; wxASSERT_MSG( (ControlHandle) m_macControl != NULL , "No valid mac control" ) ; diff --git a/src/mac/carbon/bmpbuttn.cpp b/src/mac/carbon/bmpbuttn.cpp index 5d03c4f8d3..7f89c97abd 100644 --- a/src/mac/carbon/bmpbuttn.cpp +++ b/src/mac/carbon/bmpbuttn.cpp @@ -52,14 +52,18 @@ bool wxBitmapButton::Create(wxWindow *parent, wxWindowID id, const wxBitmap& bit Rect bounds ; Str255 title ; - m_bmpNormal = bitmap; - wxBitmapRefData * bmap = (wxBitmapRefData*) ( m_bmpNormal.GetRefData()) ; + m_bmpNormal = bitmap; + wxBitmapRefData * bmap = NULL ; + + if ( m_bmpNormal.Ok() ) + bmap = (wxBitmapRefData*) ( m_bmpNormal.GetRefData()) ; MacPreControlCreate( parent , id , "" , pos , wxSize( width , height ) ,style, validator , name , &bounds , title ) ; m_macControl = ::NewControl( MAC_WXHWND(parent->MacGetRootWindow()) , &bounds , title , false , 0 , kControlBehaviorOffsetContents + - ( bmap->m_bitmapType == kMacBitmapTypeIcon ? kControlContentCIconHandle : kControlContentPictHandle ) , 0, + ( bmap && bmap->m_bitmapType == kMacBitmapTypeIcon ? + kControlContentCIconHandle : kControlContentPictHandle ) , 0, (( style & wxBU_AUTODRAW ) ? kControlBevelButtonSmallBevelProc : kControlBevelButtonNormalBevelProc ), (long) this ) ; wxASSERT_MSG( (ControlHandle) m_macControl != NULL , "No valid mac control" ) ; -- 2.50.0