Browse Source

Implement length(PWideChar) with IndexWord.

Rika Ichinose 1 year ago
parent
commit
875e22f7d7
1 changed files with 3 additions and 5 deletions
  1. 3 5
      rtl/inc/generic.inc

+ 3 - 5
rtl/inc/generic.inc

@@ -1290,13 +1290,11 @@ end;
 {$ifndef FPC_SYSTEM_HAS_FPC_PWIDECHAR_LENGTH}
 
 function fpc_pwidechar_length(p:pwidechar):sizeint;[public,alias:'FPC_PWIDECHAR_LENGTH']; compilerproc;
-var i : sizeint;
 begin
-  i:=0;
   if assigned(p) then
-    while p[i]<>#0 do
-      inc(i);
-  exit(i);
+    Result:=IndexWord(p^,-1,0)
+  else
+    result:=0;
 end;
 
 {$endif ndef FPC_SYSTEM_HAS_FPC_PWIDECHAR_LENGTH}