Răsfoiți Sursa

* PChar -> PAnsiChar

Michaël Van Canneyt 2 ani în urmă
părinte
comite
7688f50c90
1 a modificat fișierele cu 8 adăugiri și 4 ștergeri
  1. 8 4
      utils/instantfpc/instantfptools.pas

+ 8 - 4
utils/instantfpc/instantfptools.pas

@@ -399,12 +399,16 @@ end;
 
 procedure Run(const Filename: string);
 var
-  p : PPChar;
+  FN : AnsiString {$IF SIZEOF(CHAR)=1} absolute FileName{$endif};
+  p : PPAnsiChar;
   {$IFNDEF UseFpExecV}
   i : integer;
-  args : array of string;
+  args : array of ansistring;
   {$ENDIF}
 begin
+  {$if SIZEOF(CHAR)=2}
+  FN:=UTF8Encode(FileName);
+  {$ENDIF}
   p:=argv;
   inc(p);
   while (p<>nil) do begin
@@ -414,7 +418,7 @@ begin
     inc(p);
   end;
   {$IFDEF UseFpExecV}
-    Halt(FpExecV(Filename,p));
+    Halt(FpExecV(FN,p));
   {$ELSE}
     if paramcount>1 then
       begin
@@ -422,7 +426,7 @@ begin
         for i:=2 to paramcount do 
           args[i-2]:=paramstr(i);
       end;
-    Halt(ExecuteProcess(Filename,args));
+    Halt(ExecuteProcess(FN,args));
   {$ENDIF}
 end;