X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3b0b5f13f56783d3444dedf615c99840fe7ec93a..f526f7526bfe458ec15ef1bd7abafd66caaf79c2:/include/wx/arrimpl.cpp diff --git a/include/wx/arrimpl.cpp b/include/wx/arrimpl.cpp index 844eb4b751..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) @@ -52,7 +47,7 @@ name& name::operator=(const name& src) \ return *this; \ } \ \ -name::name(const name& src) \ +name::name(const name& src) : wxArrayPtrVoid() \ { \ DoCopy(src); \ } \ @@ -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); \