diff --git a/rtl/unix/cwstring.pp b/rtl/unix/cwstring.pp index c82de2d9ca..d05bcab154 100644 --- a/rtl/unix/cwstring.pp +++ b/rtl/unix/cwstring.pp @@ -57,6 +57,7 @@ var function towlower(__wc:wint_t):wint_t;cdecl;external libiconvname name 'towlower'; function towupper(__wc:wint_t):wint_t;cdecl;external libiconvname name 'towupper'; function wcscoll (__s1:pwchar_t; __s2:pwchar_t):cint;cdecl;external libiconvname name 'wcscoll'; +function strcoll (__s1:pchar_t; __s2:pchar_t):cint;cdecl;external libiconvname name 'strcoll'; const {$ifdef linux} @@ -227,11 +228,16 @@ function CompareTextWideString(const s1, s2 : WideString): PtrInt; begin end; -Var - CWideStringManager : TWideStringManager; + +function StrCompAnsi(s1,s2 : AnsiString): PtrInt; + begin + result:=strcoll(s1,s2); + end; + Procedure SetCWideStringManager; - +Var + CWideStringManager : TWideStringManager; begin CWideStringManager:=widestringmanager; With CWideStringManager do @@ -250,7 +256,9 @@ begin LowerAnsiStringProc CompareStrAnsiStringProc CompareTextAnsiStringProc - StrCompAnsiStringProc + } + StrCompAnsiStringProc:=@StrCompAnsi; + { StrICompAnsiStringProc StrLCompAnsiStringProc StrLICompAnsiStringProc