git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30838
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
// constants
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
-#if defined(__VISAGECPP__) && __IBMCPP__ >= 400
-// must define this static for VA or else you get multiply defined symbols everywhere
-extern const unsigned int wxSTRING_MAXLEN;
-
-#else
// maximum possible length for a string means "take all string" everywhere
// maximum possible length for a string means "take all string" everywhere
-// (as sizeof(StringData) is unknown here, we subtract 100)
-const unsigned int wxSTRING_MAXLEN = UINT_MAX - 100;
-
-#endif
+#define wxSTRING_MAXLEN wxStringBase::npos
// ----------------------------------------------------------------------------
// global data
// ----------------------------------------------------------------------------
// global data
void wxStripExtension(wxString& buffer)
{
void wxStripExtension(wxString& buffer)
{
- size_t len = buffer.Length();
- size_t i = len-1;
- while (i > 0)
- {
- if (buffer.GetChar(i) == wxT('.'))
+ //RN: Be careful about the handling the case where
+ //buffer.Length() == 0
+ for(size_t i = buffer.Length() - 1; i != wxString::npos; --i)
- buffer = buffer.Left(i);
- break;
+ if (buffer.GetChar(i) == wxT('.'))
+ {
+ buffer = buffer.Left(i);
+ break;
+ }
}
// Destructive removal of /./ and /../ stuff
}
// Destructive removal of /./ and /../ stuff
// static class variables definition
// ---------------------------------------------------------------------------
// static class variables definition
// ---------------------------------------------------------------------------
-#if defined(__VISAGECPP__) && __IBMCPP__ >= 400
-// must define this static for VA or else you get multiply defined symbols
-// everywhere
-const unsigned int wxSTRING_MAXLEN = UINT_MAX - 100;
-#endif // Visual Age
-
- const size_t wxStringBase::npos = wxSTRING_MAXLEN;
+ //According to STL _must_ be a -1 size_t
+ const size_t wxStringBase::npos = (size_t) -1;
#endif
// ----------------------------------------------------------------------------
#endif
// ----------------------------------------------------------------------------