]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/list.cpp
fixing overrelease and out-of-bounds write, fixes #13725
[wxWidgets.git] / src / common / list.cpp
index 60703f48c9ebb7a24b00a0ddc69389ec92676f1d..58c38ea33a856e912446ae9a750cd3ebff93bb50 100644 (file)
@@ -33,7 +33,7 @@
     #include "wx/crt.h"
 #endif
 
-#if !wxUSE_STL
+#if !wxUSE_STD_CONTAINERS
 
 // =============================================================================
 // implementation
@@ -171,22 +171,18 @@ void wxListBase::DoCopy(const wxListBase& list)
     {
         case wxKEY_INTEGER:
             {
-                long key;
                 for ( wxNodeBase *node = list.GetFirst(); node; node = node->GetNext() )
                 {
-                    key = node->GetKeyInteger();
-                    Append(key, node->GetData());
+                    Append(node->GetKeyInteger(), node->GetData());
                 }
                 break;
             }
 
         case wxKEY_STRING:
             {
-                const wxChar *key;
                 for ( wxNodeBase *node = list.GetFirst(); node; node = node->GetNext() )
                 {
-                    key = node->GetKeyString();
-                    Append(key, node->GetData());
+                    Append(node->GetKeyString(), node->GetData());
                 }
                 break;
             }
@@ -756,16 +752,16 @@ wxNode *wxStringList::Prepend(const wxChar *s)
 
 #endif // wxLIST_COMPATIBILITY
 
-#else // wxUSE_STL = 1
+#else // wxUSE_STD_CONTAINERS = 1
 
     #include "wx/listimpl.cpp"
     WX_DEFINE_LIST(wxObjectList)
 
-// with wxUSE_STL wxStringList contains wxString objects, not pointers
+// with wxUSE_STD_CONTAINERS wxStringList contains wxString objects, not pointers
 void _WX_LIST_HELPER_wxStringListBase::DeleteFunction( wxString WXUNUSED(X) )
 {
 }
 
-wxStringListBase::BaseListType wxStringListBase::EmptyList;
+_WX_LIST_HELPER_wxStringListBase::BaseListType _WX_LIST_HELPER_wxStringListBase::EmptyList;
 
-#endif // !wxUSE_STL
+#endif // !wxUSE_STD_CONTAINERS