diff --git a/src/osx/carbon/region.cpp b/src/osx/carbon/region.cpp index 7362c13aac..8f3eeb884f 100644 --- a/src/osx/carbon/region.cpp +++ b/src/osx/carbon/region.cpp @@ -202,17 +202,7 @@ bool wxRegion::DoCombine(const wxRegion& region, wxRegionOp op) { wxCHECK_MSG( region.IsOk(), false, wxT("invalid wxRegion") ); - // Don't change shared data - if (!m_refData) - { - m_refData = new wxRegionRefData(); - } - else if (m_refData->GetRefCount() > 1) - { - wxRegionRefData* ref = (wxRegionRefData*)m_refData; - UnRef(); - m_refData = new wxRegionRefData(*ref); - } + AllocExclusive(); switch (op) {