X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/338dd992160bf20205743c092b353d96ef7604fb..1e8d2f694e532c2bdce5e7ecc6b3709fdf6c3d68:/src/common/datstrm.cpp diff --git a/src/common/datstrm.cpp b/src/common/datstrm.cpp index 2ea158faae..433c90472a 100644 --- a/src/common/datstrm.cpp +++ b/src/common/datstrm.cpp @@ -5,7 +5,7 @@ // Modified by: // Created: 28/06/98 // RCS-ID: $Id$ -// Copyright: (c) Guilhem Lavaux +// Copyright: (c) Guilhem Lavaux // Licence: wxWindows license ///////////////////////////////////////////////////////////////////////////// @@ -86,22 +86,17 @@ double wxDataInputStream::ReadDouble() wxString wxDataInputStream::ReadString() { - wxString wx_string; - char *string; - unsigned long len; + wxString s; + size_t len; len = Read32(); - string = new char[len+1]; - m_input->Read(string, len); + m_input->Read(s.GetWriteBuf(len), len); + s.UngetWriteBuf(); - string[len] = 0; - wx_string = string; - delete string; - - return wx_string; + return s; } - + wxDataInputStream& wxDataInputStream::operator>>(wxString& s) { s = ReadString(); @@ -285,4 +280,4 @@ wxDataOutputStream& wxDataOutputStream::operator<<(float f) #endif // wxUSE_STREAMS - +