X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8208e181cb576ec6cda37624923f95a59af43072..d2c6d54928e7ba32b2bf6ddf0ca5f3dd4339758b:/src/mac/carbon/dcmemory.cpp diff --git a/src/mac/carbon/dcmemory.cpp b/src/mac/carbon/dcmemory.cpp index fe88bf806c..a56c7b5c49 100644 --- a/src/mac/carbon/dcmemory.cpp +++ b/src/mac/carbon/dcmemory.cpp @@ -33,10 +33,20 @@ wxMemoryDC::wxMemoryDC( wxDC *WXUNUSED(dc) ) wxMemoryDC::~wxMemoryDC(void) { + if ( m_selected.Ok() ) + { + wxBitmapRefData * bmap = (wxBitmapRefData*) (m_selected.GetRefData()) ; + UnlockPixels( GetGWorldPixMap( (CGrafPtr) bmap->m_hBitmap ) ) ; + } }; void wxMemoryDC::SelectObject( const wxBitmap& bitmap ) { + if ( m_selected.Ok() ) + { + wxBitmapRefData * bmap = (wxBitmapRefData*) (m_selected.GetRefData()) ; + UnlockPixels( GetGWorldPixMap( (CGrafPtr) bmap->m_hBitmap ) ) ; + } m_selected = bitmap; if (m_selected.Ok()) { @@ -44,6 +54,7 @@ void wxMemoryDC::SelectObject( const wxBitmap& bitmap ) if ( bmap->m_hBitmap ) { m_macPort = (GrafPtr) bmap->m_hBitmap ; + LockPixels( GetGWorldPixMap( (CGrafPtr) m_macPort ) ) ; wxMask * mask = bitmap.GetMask() ; if ( mask ) {