X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/be53e8ae80b65697dd27fd86530456c4e760e25d..b2238cc3156f4e15e567d2218c88301bc2af9adb:/src/common/variant.cpp diff --git a/src/common/variant.cpp b/src/common/variant.cpp index 2b952944b1..627edfbef6 100644 --- a/src/common/variant.cpp +++ b/src/common/variant.cpp @@ -63,12 +63,12 @@ IMPLEMENT_DYNAMIC_CLASS(wxVariant, wxObject) wxVariant::wxVariant() { - m_data = (wxVariantData*) NULL; + m_data = NULL; } bool wxVariant::IsNull() const { - return (m_data == (wxVariantData*) NULL); + return (m_data == NULL); } void wxVariant::MakeNull() @@ -84,7 +84,7 @@ void wxVariant::Clear() wxVariant::wxVariant(const wxVariant& variant) : wxObject() { - m_data = (wxVariantData*) NULL; + m_data = NULL; if (!variant.IsNull()) Ref(variant); @@ -1182,7 +1182,11 @@ void wxVariant::operator= (void* value) void* wxVariant::GetVoidPtr() const { - wxASSERT( (GetType() == wxT("void*")) ); + // handling this specially is convenient when working with COM, see #9873 + if ( IsNull() ) + return NULL; + + wxASSERT( GetType() == wxT("void*") ); return (void*) ((wxVariantDataVoidPtr*) m_data)->GetValue(); }