瀏覽代碼

* PChar -> PAnsiChar

Michaël Van Canneyt 2 年之前
父節點
當前提交
2bca50e10a

+ 4 - 3
packages/iconvenc/examples/iconvtest.pp

@@ -23,15 +23,16 @@ uses
   iconvenc;
   iconvenc;
 
 
 // some random Hebrew string for testing in CP1255
 // some random Hebrew string for testing in CP1255
-Const InputString : array[0..21] of char = 
+Const InputString : array[0..21] of AnsiChar = 
           (#$e0,#$e1,#$e2,#$e3,#$e4,#$e5,#$e6,#$e7,
           (#$e0,#$e1,#$e2,#$e3,#$e4,#$e5,#$e6,#$e7,
 	   #$e8,#$e9,#$eb,#$ec,#$ee,#$f0,#$f1,#$f2,
 	   #$e8,#$e9,#$eb,#$ec,#$ee,#$f0,#$f1,#$f2,
   	   #$f4,#$f6,#$f7,#$f8,#$f9,#$fa);
   	   #$f4,#$f6,#$f7,#$f8,#$f9,#$fa);
       InputEncoding = 'CP1255';
       InputEncoding = 'CP1255';
    
    
-procedure DoOneConversion(TargetEncoding:string);
+procedure DoOneConversion(TargetEncoding:AnsiString);
 var
 var
-  fn,res: string;
+  fn : String;
+  res: Ansistring;
   f1:text;
   f1:text;
   convres: integer;
   convres: integer;
 begin
 begin

+ 7 - 7
packages/iconvenc/src/iconvenc.pas

@@ -35,8 +35,8 @@ type
    piconv_t = ^iconv_t;
    piconv_t = ^iconv_t;
    iconv_t = pointer;
    iconv_t = pointer;
 
 
-   Ticonv_open = function(__tocode: pchar; __fromcode: pchar): iconv_t; cdecl;
-   Ticonv = function(__cd: iconv_t; __inbuf: ppchar; __inbytesleft: psize_t; __outbuf: ppchar; __outbytesleft: psize_t): size_t; cdecl;
+   Ticonv_open = function(__tocode: PAnsiChar; __fromcode: PAnsiChar): iconv_t; cdecl;
+   Ticonv = function(__cd: iconv_t; __inbuf: PPAnsiChar; __inbytesleft: psize_t; __outbuf: PPAnsiChar; __outbytesleft: psize_t): size_t; cdecl;
    Ticonv_close = function(__cd: iconv_t): cint; cdecl;
    Ticonv_close = function(__cd: iconv_t): cint; cdecl;
 
 
 {$if not defined(linux) and not defined(solaris)}  // Linux (and maybe glibc pl
 {$if not defined(linux) and not defined(solaris)}  // Linux (and maybe glibc pl
@@ -65,19 +65,19 @@ Const
   iconvprefix='';
   iconvprefix='';
 {$endif}
 {$endif}
                            
                            
-function iconv_open(__tocode: pchar; __fromcode: pchar): iconv_t; cdecl; external libiconvname name iconvprefix+'iconv_open';
-function iconv (__cd: iconv_t; __inbuf: ppchar; __inbytesleft: psize_t; __outbuf: ppchar; __outbytesleft: psize_t): size_t; cdecl; external libiconvname name iconvprefix+'iconv';
+function iconv_open(__tocode: PAnsiChar; __fromcode: PAnsiChar): iconv_t; cdecl; external libiconvname name iconvprefix+'iconv_open';
+function iconv (__cd: iconv_t; __inbuf: PPAnsiChar; __inbytesleft: psize_t; __outbuf: PPAnsiChar; __outbytesleft: psize_t): size_t; cdecl; external libiconvname name iconvprefix+'iconv';
 function iconv_close (__cd: iconv_t): cint; cdecl; external libiconvname name iconvprefix+'iconv_close';
 function iconv_close (__cd: iconv_t): cint; cdecl; external libiconvname name iconvprefix+'iconv_close';
 
 
 var
 var
   IconvLibFound: boolean = False;
   IconvLibFound: boolean = False;
 
 
-function Iconvert(s: string; var res: string; const  FromEncoding, ToEncoding: string): cint;
-function InitIconv(var error: string): boolean;
+function Iconvert(s: AnsiString; var res: AnsiString; const  FromEncoding, ToEncoding: AnsiString): cint;
+function InitIconv(var error: String): boolean;
 
 
 implementation
 implementation
 
 
-function InitIconv(var error: string): boolean;
+function InitIconv(var error:String ): boolean;
 begin
 begin
   result := true;
   result := true;
   iconvlibfound := iconvlibfound or result;
   iconvlibfound := iconvlibfound or result;

+ 9 - 9
packages/iconvenc/src/iconvenc_dyn.pas

@@ -35,8 +35,8 @@ type
    piconv_t = ^iconv_t;
    piconv_t = ^iconv_t;
    iconv_t = pointer;
    iconv_t = pointer;
 
 
-   Ticonv_open = function(__tocode: pchar; __fromcode: pchar): iconv_t; cdecl;
-   Ticonv = function(__cd: iconv_t; __inbuf: ppchar; __inbytesleft: psize_t; __outbuf: ppchar; __outbytesleft: psize_t): size_t; cdecl;
+   Ticonv_open = function(__tocode: PAnsiChar; __fromcode: PAnsiChar): iconv_t; cdecl;
+   Ticonv = function(__cd: iconv_t; __inbuf: PPAnsiChar; __inbytesleft: psize_t; __outbuf: PPAnsiChar; __outbytesleft: psize_t): size_t; cdecl;
    Ticonv_close = function(__cd: iconv_t): cint; cdecl;
    Ticonv_close = function(__cd: iconv_t): cint; cdecl;
 
 
 var
 var
@@ -46,17 +46,17 @@ var
   iconv_close: Ticonv_close;
   iconv_close: Ticonv_close;
   IconvLibFound: boolean = False;
   IconvLibFound: boolean = False;
 
 
-function TryLoadLib(LibName: string; var error: string): boolean; // can be used to load non standard libname
-function Iconvert(s: string; var res: string; const FromEncoding, ToEncoding: string): cint;
-function InitIconv(var error: string): boolean;
+function TryLoadLib(LibName: string; var error: String): boolean; // can be used to load non standard libname
+function Iconvert(s: AnsiString; var res: AnsiString; const FromEncoding, ToEncoding: AnsiString): cint;
+function InitIconv(var error: AnsiString): boolean;
 
 
 implementation
 implementation
 
 
-function TryLoadLib(LibName: string; var error: string): boolean;
+function TryLoadLib(LibName: string; var error: String): boolean;
 
 
     function resolvesymbol (var funcptr; symbol: string): Boolean;
     function resolvesymbol (var funcptr; symbol: string): Boolean;
     begin
     begin
-      pointer(funcptr) := pointer(dlsym(iconv_lib, pchar(symbol)));
+      pointer(funcptr) := pointer(dlsym(iconv_lib, PAnsiChar(symbol)));
       result := assigned(pointer(funcptr));
       result := assigned(pointer(funcptr));
       if not result then
       if not result then
         error := error+#13#10+dlerror();
         error := error+#13#10+dlerror();
@@ -67,7 +67,7 @@ var
 begin
 begin
   result := false;
   result := false;
   Error := Error+#13#10'Trying '+LibName;
   Error := Error+#13#10'Trying '+LibName;
-  iconv_lib := dlopen(pchar(libname), RTLD_NOW);
+  iconv_lib := dlopen(PAnsiChar(libname), RTLD_NOW);
   if Assigned(iconv_lib) then
   if Assigned(iconv_lib) then
   begin
   begin
     result := true;
     result := true;
@@ -88,7 +88,7 @@ begin
 end;
 end;
 
 
 
 
-function InitIconv(var error: string): boolean;
+function InitIconv(var error: ): boolean;
 begin
 begin
   result := true;
   result := true;
   error := '';
   error := '';

+ 19 - 19
packages/iconvenc/src/iconvert.inc

@@ -3,17 +3,17 @@
  {$define noerrnoiconv}
  {$define noerrnoiconv}
 {$endif}
 {$endif}
 
 
-function Iconvert(S: string; var Res: string; const FromEncoding, ToEncoding: string): cint;
+function Iconvert(S: AnsiString; var Res: AnsiString; const FromEncoding, ToEncoding: AnsiString): cint;
 var
 var
   InLen, OutLen, Offset: size_t;
   InLen, OutLen, Offset: size_t;
-  Src, Dst: pchar;
+  Src, Dst: PAnsiChar;
   H: iconv_t;
   H: iconv_t;
   {$ifndef noerrnoiconv}
   {$ifndef noerrnoiconv}
   lerr: cint;
   lerr: cint;
   {$endif}
   {$endif}
   iconvres: size_t;
   iconvres: size_t;
 begin
 begin
-  H := iconv_open(PChar(ToEncoding), PChar(FromEncoding));
+  H := iconv_open(PAnsiChar(ToEncoding), PAnsiChar(FromEncoding));
   if h=Iconv_t(-1) then
   if h=Iconv_t(-1) then
   begin
   begin
     Res := S;
     Res := S;
@@ -30,8 +30,8 @@ begin
     {$endif}
     {$endif}
     setlength(res,outlen);
     setlength(res,outlen);
 
 
-    Src := PChar(S);
-    Dst := PChar(Res);
+    Src := PAnsiChar(S);
+    Dst := PAnsiChar(Res);
 
 
 
 
     {$ifdef noerrnoiconv}
     {$ifdef noerrnoiconv}
@@ -43,9 +43,9 @@ begin
         end;
         end;
        if outlen<8 then    // From PHP, URL above, see also  PHP bug 55042 (they didn't recalc their "dest")
        if outlen<8 then    // From PHP, URL above, see also  PHP bug 55042 (they didn't recalc their "dest")
         begin
         begin
-          Offset:=Dst-PChar(Res);
-          SetLength(Res, Length(Res)+8); // 5 is minimally one utf-8 char
-          Dst:=PChar(Res)+Offset;
+          Offset:=Dst-PAnsiChar(Res);
+          SetLength(Res, Length(Res)+8); // 5 is minimally one utf-8 AnsiChar
+          Dst:=PAnsiChar(Res)+Offset;
           OutLen:=Length(Res)-Offset;
           OutLen:=Length(Res)-Offset;
         end;
         end;
        InLen=0;
        InLen=0;
@@ -62,7 +62,7 @@ begin
       if iconvres = size_t(-1) then
       if iconvres = size_t(-1) then
       begin
       begin
         lerr := cerrno;
         lerr := cerrno;
-        if lerr = ESysEILSEQ then // unknown char, skip
+        if lerr = ESysEILSEQ then // unknown AnsiChar, skip
           begin
           begin
             Dst^ := Src^;
             Dst^ := Src^;
             Inc(Src);
             Inc(Src);
@@ -73,9 +73,9 @@ begin
         else
         else
           if lerr = ESysE2BIG then
           if lerr = ESysE2BIG then
             begin
             begin
-              Offset := Dst - PChar(Res);
-              SetLength(Res, Length(Res)+InLen*2+5); // 5 is minimally one utf-8 char
-              Dst := PChar(Res) + Offset;
+              Offset := Dst - PAnsiChar(Res);
+              SetLength(Res, Length(Res)+InLen*2+5); // 5 is minimally one utf-8 AnsiChar
+              Dst := PAnsiChar(Res) + Offset;
               OutLen := Length(Res) - Offset;
               OutLen := Length(Res) - Offset;
             end
             end
           else
           else
@@ -83,14 +83,14 @@ begin
       end;
       end;
     end;
     end;
    
    
-    // iconv has a buffer that needs flushing, specially if the last char is not #0
+    // iconv has a buffer that needs flushing, specially if the last AnsiChar is not #0
     iconvres:=iconv(H, nil, nil, @Dst, @Outlen);
     iconvres:=iconv(H, nil, nil, @Dst, @Outlen);
     lerr:=cerrno;
     lerr:=cerrno;
     if (iconvres=size_t(-1)) and (lerr=ESysE2BIG) then
     if (iconvres=size_t(-1)) and (lerr=ESysE2BIG) then
       begin
       begin
-        Offset:=Dst-PChar(Res);
-        SetLength(Res, Length(Res)+InLen*2+5); // 5 is minimally one utf-8 char
-        Dst:=PChar(Res)+Offset;
+        Offset:=Dst-PAnsiChar(Res);
+        SetLength(Res, Length(Res)+InLen*2+5); // 5 is minimally one utf-8 AnsiChar
+        Dst:=PAnsiChar(Res)+Offset;
         OutLen:=Length(Res)-Offset;
         OutLen:=Length(Res)-Offset;
         InLen:=0;
         InLen:=0;
         iconv(H, nil, @InLen, @Dst, @Outlen);
         iconv(H, nil, @InLen, @Dst, @Outlen);
@@ -99,9 +99,9 @@ begin
     // trim output buffer
     // trim output buffer
     SetLength(Res, Length(Res) - Outlen);
     SetLength(Res, Length(Res) - Outlen);
   finally 
   finally 
-        Offset:=Dst-PChar(Res);
-        SetLength(Res, Length(Res)+InLen*2+5); // 5 is minimally one utf-8 char
-        Dst:=PChar(Res)+Offset;
+        Offset:=Dst-PAnsiChar(Res);
+        SetLength(Res, Length(Res)+InLen*2+5); // 5 is minimally one utf-8 AnsiChar
+        Dst:=PAnsiChar(Res)+Offset;
         OutLen:=Length(Res)-Offset;
         OutLen:=Length(Res)-Offset;
         InLen:=0;
         InLen:=0;
         iconvres:=iconv(H, nil, @InLen, @Dst, @Outlen);
         iconvres:=iconv(H, nil, @InLen, @Dst, @Outlen);