]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/string.cpp
moved wxID_SEPARATOR from menuitem.h to defs.h
[wxWidgets.git] / src / common / string.cpp
index 280e105f2539c09d15fb2b75b1bf7c9ba53e5990..ed777353a7e37d8cc35e9183dc453a3f34b63b16 100644 (file)
@@ -203,7 +203,10 @@ extern int WXDLLEXPORT wxVsnprintf(wxChar *buf, size_t len,
     // vsnprintf() will not terminate the string with '\0' if there is not
     // enough place, but we want the string to always be NUL terminated
     int rc = wxVsnprintfA(buf, len - 1, format, argptr);
     // vsnprintf() will not terminate the string with '\0' if there is not
     // enough place, but we want the string to always be NUL terminated
     int rc = wxVsnprintfA(buf, len - 1, format, argptr);
-    buf[len] = 0;
+    if ( rc == -1 )
+    {
+        buf[len] = 0;
+    }
 
     return rc;
 #endif // Unicode/ANSI
 
     return rc;
 #endif // Unicode/ANSI
@@ -1640,17 +1643,6 @@ size_t wxString::find_last_not_of(wxChar ch, size_t nStart) const
     return npos;
 }
 
     return npos;
 }
 
-wxString wxString::substr(size_t nStart, size_t nLen) const
-{
-  // npos means 'take all'
-  if ( nLen == npos )
-    nLen = 0;
-
-  wxASSERT( nStart + nLen <= Len() );
-
-  return wxString(c_str() + nStart, nLen == npos ? 0 : nLen);
-}
-
 wxString& wxString::erase(size_t nStart, size_t nLen)
 {
   wxString strTmp(c_str(), nStart);
 wxString& wxString::erase(size_t nStart, size_t nLen)
 {
   wxString strTmp(c_str(), nStart);