check for self assignment in operator=

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62762 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Paul Cornett
2009-12-02 16:36:50 +00:00
parent 46b8d15a67
commit 2a32b8071b
3 changed files with 13 additions and 8 deletions

View File

@@ -663,6 +663,7 @@ public:
*/ */
wxAny& operator=(const wxAny &any) wxAny& operator=(const wxAny &any)
{ {
if (this != &any)
AssignAny(any); AssignAny(any);
return *this; return *this;
} }

View File

@@ -233,10 +233,13 @@ public:
is made to point to the new pointer. is made to point to the new pointer.
*/ */
wxCFRef& operator=(const wxCFRef& otherRef) wxCFRef& operator=(const wxCFRef& otherRef)
{
if (this != &otherRef)
{ {
wxCFRetain(otherRef.m_ptr); wxCFRetain(otherRef.m_ptr);
wxCFRelease(m_ptr); wxCFRelease(m_ptr);
m_ptr = otherRef.m_ptr; m_ptr = otherRef.m_ptr;
}
return *this; return *this;
} }

View File

@@ -136,11 +136,12 @@ public:
} }
wxSockAddressImpl& operator=(const wxSockAddressImpl& other) wxSockAddressImpl& operator=(const wxSockAddressImpl& other)
{
if (this != &other)
{ {
free(m_addr); free(m_addr);
InitFromOther(other); InitFromOther(other);
}
return *this; return *this;
} }