X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d84afea9d1ec41ee4e2ebb3bf6b87926cf5f04d1..ef094fa075bc56bcbc33b12159c395ea28afda3b:/include/wx/arrimpl.cpp diff --git a/include/wx/arrimpl.cpp b/include/wx/arrimpl.cpp index 8296608a01..cee3933129 100644 --- a/include/wx/arrimpl.cpp +++ b/include/wx/arrimpl.cpp @@ -22,12 +22,7 @@ // needed to resolve the conflict between global T and macro parameter T -// VC++ can't cope with string concatenation in Unicode mode -#if defined(wxUSE_UNICODE) && wxUSE_UNICODE -#define _WX_ERROR_REMOVE2(x) wxT("bad index in ::RemoveAt()") -#else -#define _WX_ERROR_REMOVE2(x) wxT("bad index in " #x "::RemoveAt()") -#endif +#define _WX_ERROR_REMOVE2(x) wxT("bad index in ") wxT(#x) wxT("::RemoveAt()") // macro implements remaining (not inline) methods of template list // (it's private to this file) @@ -75,6 +70,8 @@ void name::RemoveAt(size_t uiIndex, size_t nRemove) \ \ void name::Add(const T& item, size_t nInsert) \ { \ + if (nInsert == 0) \ + return; \ T* pItem = new T(item); \ size_t nOldSize = GetCount(); \ if ( pItem != NULL ) \ @@ -85,6 +82,8 @@ void name::Add(const T& item, size_t nInsert) \ \ void name::Insert(const T& item, size_t uiIndex, size_t nInsert) \ { \ + if (nInsert == 0) \ + return; \ T* pItem = new T(item); \ if ( pItem != NULL ) \ wxBaseArrayPtrVoid::Insert(pItem, uiIndex, nInsert); \