]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/textfile.cpp
fix for using wxDataObjectComposite with the clipboard
[wxWidgets.git] / src / common / textfile.cpp
index f0e08b4012308a4457c2230fbf2e644654b7699f..63f02f1a37a75105bc23e39e7b68edf877bb620b 100644 (file)
@@ -61,20 +61,22 @@ bool wxTextFile::OnExists() const
 
 bool wxTextFile::OnOpen(const wxString &strBufferName, wxTextBufferOpenMode OpenMode)
 {
-    wxFile::OpenMode FileOpenMode = wxFile::read;
-  
-    switch (OpenMode)
-  {
+    wxFile::OpenMode FileOpenMode;
+
+    switch ( OpenMode )
+    {
+        default:
+            wxFAIL_MSG( _T("unknown open mode in wxTextFile::Open") );
+            // fall through
+
         case ReadAccess :
             FileOpenMode = wxFile::read;
             break;
+
         case WriteAccess :
             FileOpenMode = wxFile::write;
             break;
-        default :
-            wxASSERT(0); // Should not happen.
-            break;
-  }
+    }
 
     return m_file.Open(strBufferName.c_str(), FileOpenMode);
 }
@@ -136,6 +138,7 @@ bool wxTextFile::OnRead(wxMBConv& conv)
                     AddLine(str, wxTextFileType_Mac);
             chLast = ch;
 #if wxUSE_UNICODE
+            conv_mbBuf[0] = ch;
             if (conv.MB2WC(conv_wcBuf, conv_mbBuf, 2) == (size_t)-1)
                 conv_wcBuf[0] = ch;
             str = conv_wcBuf[0];
@@ -146,6 +149,7 @@ bool wxTextFile::OnRead(wxMBConv& conv)
           else {
             // add to the current line
 #if wxUSE_UNICODE
+            conv_mbBuf[0] = ch;
             if (conv.MB2WC(conv_wcBuf, conv_mbBuf, 2) == (size_t)-1)
                 conv_wcBuf[0] = ch;
             str += conv_wcBuf[0];