浏览代码

* FileIsReadOnly fixed

peter 21 年之前
父节点
当前提交
c17c80def1
共有 1 个文件被更改,包括 23 次插入20 次删除
  1. 23 20
      rtl/unix/sysutils.pp

+ 23 - 20
rtl/unix/sysutils.pp

@@ -318,11 +318,11 @@ begin
   RenameFile:=BaseUnix.FpRename(OldNAme,NewName)>=0;
   RenameFile:=BaseUnix.FpRename(OldNAme,NewName)>=0;
 end;
 end;
 
 
-Function FileIsReadOnly(const FileName: String): Boolean; 
- 
+Function FileIsReadOnly(const FileName: String): Boolean;
+
 begin
 begin
-  Result := fpAccess(PChar(FileName),W_OK)= 0;
-end;  
+  Result := fpAccess(PChar(FileName),W_OK)<>0;
+end;
 
 
 {****************************************************************************
 {****************************************************************************
                               Disk Functions
                               Disk Functions
@@ -500,8 +500,8 @@ Begin
     so that long filenames will always be accepted. But don't
     so that long filenames will always be accepted. But don't
     do it if there are already double quotes!
     do it if there are already double quotes!
   }
   }
-  {$ifdef FPC_USE_FPEXEC}	// Only place we still parse
-   cmdline2:=nil;		
+  {$ifdef FPC_USE_FPEXEC}       // Only place we still parse
+   cmdline2:=nil;
    if Comline<>'' Then
    if Comline<>'' Then
      begin
      begin
        CommandLine:=ComLine;
        CommandLine:=ComLine;
@@ -512,7 +512,7 @@ Begin
      begin
      begin
        getmem(cmdline2,2*sizeof(pchar));
        getmem(cmdline2,2*sizeof(pchar));
        cmdline2^:=pchar(Path);
        cmdline2^:=pchar(Path);
-       cmdline2[1]:=nil; 
+       cmdline2[1]:=nil;
      end;
      end;
   {$else}
   {$else}
   if Pos ('"', Path) = 0 then
   if Pos ('"', Path) = 0 then
@@ -527,7 +527,7 @@ Begin
    begin
    begin
    {The child does the actual exec, and then exits}
    {The child does the actual exec, and then exits}
     {$ifdef FPC_USE_FPEXEC}
     {$ifdef FPC_USE_FPEXEC}
-      fpexecv(pchar(Path),Cmdline2);	
+      fpexecv(pchar(Path),Cmdline2);
     {$else}
     {$else}
       Execl(CommandLine);
       Execl(CommandLine);
     {$endif}
     {$endif}
@@ -541,7 +541,7 @@ Begin
       e.ErrorCode:=-1;
       e.ErrorCode:=-1;
       raise e;
       raise e;
     end;
     end;
-    
+
   { We're in the parent, let's wait. }
   { We're in the parent, let's wait. }
   result:=WaitProcess(pid); // WaitPid and result-convert
   result:=WaitProcess(pid); // WaitPid and result-convert
 
 
@@ -582,7 +582,7 @@ Begin
       e.ErrorCode:=-1;
       e.ErrorCode:=-1;
       raise e;
       raise e;
     end;
     end;
-    
+
   { We're in the parent, let's wait. }
   { We're in the parent, let's wait. }
   result:=WaitProcess(pid); // WaitPid and result-convert
   result:=WaitProcess(pid); // WaitPid and result-convert
 
 
@@ -603,7 +603,7 @@ Var
   fd : Integer;
   fd : Integer;
   fds : TfdSet;
   fds : TfdSet;
   timeout : TimeVal;
   timeout : TimeVal;
-  
+
 begin
 begin
   fd:=FileOpen('/dev/null',fmOpenRead);
   fd:=FileOpen('/dev/null',fmOpenRead);
   If Not(Fd<0) then
   If Not(Fd<0) then
@@ -621,7 +621,7 @@ Function GetLastOSError : Integer;
 begin
 begin
   Result:=fpgetErrNo;
   Result:=fpgetErrNo;
 end;
 end;
-  
+
 {****************************************************************************
 {****************************************************************************
                               Initialization code
                               Initialization code
 ****************************************************************************}
 ****************************************************************************}
@@ -635,7 +635,10 @@ end.
 {
 {
 
 
   $Log$
   $Log$
-  Revision 1.38  2004-04-20 18:24:32  marco
+  Revision 1.39  2004-04-26 14:50:19  peter
+    * FileIsReadOnly fixed
+
+  Revision 1.38  2004/04/20 18:24:32  marco
    * small fix for NIL arg ptr in first executeprocess
    * small fix for NIL arg ptr in first executeprocess
 
 
   Revision 1.37  2004/03/04 22:15:16  marco
   Revision 1.37  2004/03/04 22:15:16  marco
@@ -643,13 +646,13 @@ end.
 
 
   Revision 1.36  2004/02/13 10:50:23  marco
   Revision 1.36  2004/02/13 10:50:23  marco
    * Hopefully last large changes to fpexec and friends.
    * Hopefully last large changes to fpexec and friends.
-  	- naming conventions changes from Michael.
-  	- shell functions get alternative under ifdef.
-  	- arraystring function moves to unixutil
-  	- unixutil now regards quotes in stringtoppchar.
-  	- sysutils/unix get executeprocess(ansi,array of ansi), and
-  		both executeprocess functions are fixed
-   	- Sysutils/win32 get executeprocess(ansi,array of ansi)
+        - naming conventions changes from Michael.
+        - shell functions get alternative under ifdef.
+        - arraystring function moves to unixutil
+        - unixutil now regards quotes in stringtoppchar.
+        - sysutils/unix get executeprocess(ansi,array of ansi), and
+                both executeprocess functions are fixed
+        - Sysutils/win32 get executeprocess(ansi,array of ansi)
 
 
   Revision 1.35  2004/02/12 15:31:06  marco
   Revision 1.35  2004/02/12 15:31:06  marco
    * First version of fpexec change. Still under ifdef or silently overloaded
    * First version of fpexec change. Still under ifdef or silently overloaded