]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/vector.h
rename various gsock* files to sock* (except for MSW where this will be done later)
[wxWidgets.git] / include / wx / vector.h
index 2337d3d326b825b7cefb27d2316dc307dea38f45..64b37b9885c5e371a0665d9ff30a2e9a32fe7392 100644 (file)
@@ -80,7 +80,7 @@ struct wxVectorMemOpsGeneric
         T* sourceptr = source;
         for ( size_t i = count; i > 0; --i, ++destptr, ++sourceptr )
         {
-            new(destptr) T(*sourceptr);
+            ::new(destptr) T(*sourceptr);
             sourceptr->~T();
         }
     }
@@ -92,7 +92,7 @@ struct wxVectorMemOpsGeneric
         T* sourceptr = source + count - 1;
         for ( size_t i = count; i > 0; --i, --destptr, --sourceptr )
         {
-            new(destptr) T(*sourceptr);
+            ::new(destptr) T(*sourceptr);
             sourceptr->~T();
         }
     }
@@ -230,8 +230,11 @@ public:
 
     wxVector& operator=(const wxVector& vb)
     {
-        clear();
-        Copy(vb);
+        if (this != &vb)
+        {
+            clear();
+            Copy(vb);
+        }
         return *this;
     }
 
@@ -309,7 +312,7 @@ public:
 
         // use placement new to initialize new object in preallocated place in
         // m_values and store 'v' in it:
-        new(place) value_type(v);
+        ::new(place) value_type(v);
 
         // now that we did successfully add the new element, increment the size
         // and disable moving the items back