]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/fs_mem.cpp
fixing overrelease and out-of-bounds write, fixes #13725
[wxWidgets.git] / src / common / fs_mem.cpp
index 6503834972df834212749f43f23770d2c7a8ad82..5f96257100180f37ed3a5b1f55a4ed56d245f010 100644 (file)
@@ -186,13 +186,9 @@ void wxMemoryFSHandlerBase::AddFileWithMimeType(const wxString& filename,
                                                 const wxString& textdata,
                                                 const wxString& mimetype)
 {
-    AddFileWithMimeType
-    (
-        filename,
-        static_cast<const char *>(textdata.To8BitData()),
-        data.length(),
-        mimetype
-    );
+    const wxCharBuffer buf(textdata.To8BitData());
+
+    AddFileWithMimeType(filename, buf.data(), buf.length(), mimetype);
 }
 
 
@@ -253,7 +249,7 @@ wxMemoryFSHandler::AddFile(const wxString& filename,
         return;
 
     wxMemoryOutputStream mems;
-    if ( image.Ok() && image.SaveFile(mems, type) )
+    if ( image.IsOk() && image.SaveFile(mems, type) )
     {
         m_Hash[filename] = new wxMemoryFSFile
                                (