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:
		| @@ -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; | ||||||
|     } |     } | ||||||
|   | |||||||
| @@ -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; | ||||||
|     } |     } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -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; | ||||||
|     } |     } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user