瀏覽代碼

* fallback to the default ansistring comparison (when doing ansistrings
comparisons), when fpwidestring is included, but no default collation has been
set

git-svn-id: trunk@36461 -

nickysn 8 年之前
父節點
當前提交
5e4937fd3f
共有 1 個文件被更改,包括 6 次插入0 次删除
  1. 6 0
      rtl/objpas/fpwidestring.pp

+ 6 - 0
rtl/objpas/fpwidestring.pp

@@ -718,6 +718,8 @@ end;
 
 function StrLCompAnsiString(S1, S2: PAnsiChar; MaxLen: PtrUInt): PtrInt;
 begin
+  if (current_Collation.DataPtr=nil) then
+    exit(OldManager.StrLCompAnsiStringProc(s1,s2,MaxLen));
   if (MaxLen=0) then
     exit(0);
   Result := InternalCompareStrAnsiString(S1,S2,MaxLen,MaxLen);
@@ -727,6 +729,8 @@ function CompareStrAnsiString(const S1, S2: ansistring): PtrInt;
 var
   l1, l2 : PtrInt;
 begin
+  if (current_Collation.DataPtr=nil) then
+    exit(OldManager.CompareStrAnsiStringProc(s1,s2));
   if (Pointer(S1)=Pointer(S2)) then
     exit(0);
   l1:=Length(S1);
@@ -754,6 +758,8 @@ function StrCompAnsiString(S1, S2: PChar): PtrInt;
 var
   l1,l2 : PtrInt;
 begin
+  if (current_Collation.DataPtr=nil) then
+    exit(OldManager.StrCompAnsiStringProc(s1,s2));
   l1:=strlen(S1);
   l2:=strlen(S2);
   Result := InternalCompareStrAnsiString(S1,S2,l1,l2);