]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/filefn.cpp
Set HTML data even in Unicode mode
[wxWidgets.git] / src / common / filefn.cpp
index f7161adc3fb292e8d0d7de4f99ab9c0bbd491561..0a52525ad65694f845e7ce3625e8489f09dae6fa 100644 (file)
 // headers
 // ----------------------------------------------------------------------------
 
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-    #pragma implementation "filefn.h"
-#endif
-
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 #include "wx/defs.h"
@@ -546,7 +542,7 @@ wxChar *wxExpandPath(wxChar *buf, const wxChar *name)
     while ((*d++ = *s) != 0) {
 #  ifndef __WXMSW__
         if (*s == wxT('\\')) {
-            if ((*(d - 1) = *++s)) {
+            if ((*(d - 1) = *++s)!=0) {
                 s++;
                 continue;
             } else
@@ -1363,10 +1359,6 @@ wxChar *wxGetWorkingDirectory(wxChar *buf, int sz)
     bool needsANSI = true;
 
     #if !defined(HAVE_WGETCWD) || wxUSE_UNICODE_MSLU
-        // This is not legal code as the compiler
-        // is allowed destroy the wxCharBuffer.
-        // wxCharBuffer c_buffer(sz);
-        // char *cbuf = (char*)(const char*)c_buffer;
         char cbuf[_MAXPATHLEN];
     #endif
 
@@ -1452,7 +1444,13 @@ wxChar *wxGetWorkingDirectory(wxChar *buf, int sz)
 #if defined( __CYGWIN__ ) && defined( __WINDOWS__ )
         // another example of DOS/Unix mix (Cygwin)
         wxString pathUnix = buf;
+#if wxUSE_UNICODE
+        char bufA[_MAXPATHLEN];
+        cygwin_conv_to_full_win32_path(pathUnix.mb_str(wxConvFile), bufA);
+        wxConvFile.MB2WC(buf, bufA, sz);
+#else
         cygwin_conv_to_full_win32_path(pathUnix, buf);
+#endif // wxUSE_UNICODE
 #endif // __CYGWIN__
     }
 
@@ -1968,7 +1966,7 @@ wxFileKind wxGetFileKind(FILE *fp)
     (void)fp;
     return wxFILE_KIND_DISK;
 #else
-    return wxGetFileKind(fileno(fp));
+    return fp ? wxGetFileKind(fileno(fp)) : wxFILE_KIND_UNKNOWN;
 #endif
 }