X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0e0126c2204732b9dfeefef0de838d7d375cf1f0..ab0881c71cfc1019a2f2fcfedfb3860e73afe219:/include/wx/buffer.h?ds=sidebyside diff --git a/include/wx/buffer.h b/include/wx/buffer.h index 17fd98fff2..db3749c7c0 100644 --- a/include/wx/buffer.h +++ b/include/wx/buffer.h @@ -6,7 +6,7 @@ // Created: 12.04.99 // RCS-ID: $Id$ // Copyright: (c) 1998 Vadim Zeitlin -// Licence: wxWindows license +// Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// // these classes are for private use only for now, they're not documented @@ -16,8 +16,6 @@ #include "wx/wxchar.h" -#include // strdup - // ---------------------------------------------------------------------------- // Special classes for (wide) character strings: they use malloc/free instead // of new/delete @@ -95,32 +93,11 @@ private: \ chartype *m_str; \ } -#ifndef strdup -inline char *strdup(const char *cs) -{ - size_t len = 0; - while (cs[len] != 0) - len++; - const size_t siz = (len + 1)*sizeof(char); - char *csCopy = (char *)malloc(siz); - memcpy(csCopy, cs, siz); - return csCopy; -} -#endif - -DEFINE_BUFFER(wxCharBuffer, char, strdup); +DEFINE_BUFFER(wxCharBuffer, char, wxStrdupA); #if wxUSE_WCHAR_T -inline wchar_t *wxWcsdupReplacement(const wchar_t *wcs) -{ - const size_t siz = (wxWcslen(wcs) + 1)*sizeof(wchar_t); - wchar_t *wcsCopy = (wchar_t *)malloc(siz); - memcpy(wcsCopy, wcs, siz); - return wcsCopy; -} - -DEFINE_BUFFER(wxWCharBuffer, wchar_t, wxWcsdupReplacement); +DEFINE_BUFFER(wxWCharBuffer, wchar_t, wxStrdupW); #endif // wxUSE_WCHAR_T @@ -195,6 +172,8 @@ private: // the reference count size_t m_ref; + + DECLARE_NO_COPY_CLASS(wxMemoryBufferData) };