Jelajahi Sumber

* made ToSingleByteFileSystemEncodedFileName(unicodestring) overridable by
target-specific code and implemented a JVM-compatible version

git-svn-id: branches/cpstrrtl@25001 -

Jonas Maebe 12 tahun lalu
induk
melakukan
8a4b092ab9
2 mengubah file dengan 10 tambahan dan 0 penghapusan
  1. 3 0
      rtl/inc/ustrings.inc
  2. 7 0
      rtl/java/justrings.inc

+ 3 - 0
rtl/inc/ustrings.inc

@@ -2286,11 +2286,14 @@ procedure initunicodestringmanager;
 {$endif FPC_HAS_BUILTIN_WIDESTR_MANAGER}
 
 
+{$ifndef FPC_HAS_TOSINGLEBYTEFILESYSTEMENCODEDFILENAME_UNICODESTRING}
+{$define FPC_HAS_TOSINGLEBYTEFILESYSTEMENCODEDFILENAME_UNICODESTRING}
 Function ToSingleByteFileSystemEncodedFileName(const Str: UnicodeString): RawByteString;
 Begin
   widestringmanager.Unicode2AnsiMoveProc(punicodechar(Str),Result,
     DefaultFileSystemCodePage,Length(Str));
 End;
+{$endif FPC_HAS_TOSINGLEBYTEFILESYSTEMENCODEDFILENAME_UNICODESTRING}
 
 
 Function ToSingleByteFileSystemEncodedFileName(const Str: RawByteString): RawByteString;

+ 7 - 0
rtl/java/justrings.inc

@@ -906,6 +906,13 @@ function StringCodePage(const S : UnicodeString): TSystemCodePage;
       result:=DefaultUnicodeCodePage;
   end;
 
+{$define FPC_HAS_TOSINGLEBYTEFILESYSTEMENCODEDFILENAME_UNICODESTRING}
+Function ToSingleByteFileSystemEncodedFileName(const Str: UnicodeString): RawByteString;
+Begin
+  result:=AnsiString(AnsistringClass.Create(Str,DefaultFileSystemCodePage));
+End;
+
+
 
 { helpers for converting between Windows and Java code page identifiers }