Browse Source

* m68k-linux: now actually fixed syscall failure conditions.

git-svn-id: trunk@28092 -
sergei 11 years ago
parent
commit
12e0416323
1 changed files with 7 additions and 7 deletions
  1. 7 7
      rtl/linux/m68k/syscall.inc

+ 7 - 7
rtl/linux/m68k/syscall.inc

@@ -29,7 +29,7 @@ begin
     trap #0
     trap #0
     move.l d0, @Result
     move.l d0, @Result
   end ['d0'];
   end ['d0'];
-  if (result < 0) then
+  if (ptruint(result) > ptruint(-4096)) then
   begin
   begin
     seterrno(-result);
     seterrno(-result);
     result:=TSysResult(-1);
     result:=TSysResult(-1);
@@ -45,7 +45,7 @@ begin
     trap #0
     trap #0
     move.l d0, @Result
     move.l d0, @Result
   end ['d0', 'd1'];
   end ['d0', 'd1'];
-  if (result < 0) then
+  if (ptruint(result) > ptruint(-4096)) then
   begin
   begin
     seterrno(-result);
     seterrno(-result);
     result:=TSysResult(-1);
     result:=TSysResult(-1);
@@ -62,7 +62,7 @@ begin
     trap #0
     trap #0
     move.l d0, @Result
     move.l d0, @Result
   end ['d0', 'd1', 'd2'];
   end ['d0', 'd1', 'd2'];
-  if (result < 0) then
+  if (ptruint(result) > ptruint(-4096)) then
   begin
   begin
     seterrno(-result);
     seterrno(-result);
     result:=TSysResult(-1);
     result:=TSysResult(-1);
@@ -80,7 +80,7 @@ begin
     trap #0
     trap #0
     move.l d0, @Result
     move.l d0, @Result
   end ['d0', 'd1', 'd2', 'd3'];
   end ['d0', 'd1', 'd2', 'd3'];
-  if (result < 0) then
+  if (ptruint(result) > ptruint(-4096)) then
   begin
   begin
     seterrno(-result);
     seterrno(-result);
     result:=TSysResult(-1);
     result:=TSysResult(-1);
@@ -98,7 +98,7 @@ begin
     trap #0
     trap #0
     move.l d0, @Result
     move.l d0, @Result
   end ['d0', 'd1', 'd2', 'd3', 'd4'];
   end ['d0', 'd1', 'd2', 'd3', 'd4'];
-  if (result < 0) then
+    if (ptruint(result) > ptruint(-4096)) then
   begin
   begin
     seterrno(-result);
     seterrno(-result);
     result:=TSysResult(-1);
     result:=TSysResult(-1);
@@ -118,7 +118,7 @@ begin
     trap #0
     trap #0
     move.l d0, @Result
     move.l d0, @Result
   end ['d0', 'd1', 'd2', 'd3', 'd4', 'd5'];
   end ['d0', 'd1', 'd2', 'd3', 'd4', 'd5'];
-  if (result < 0) then
+  if (ptruint(result) > ptruint(-4096)) then
   begin
   begin
     seterrno(-result);
     seterrno(-result);
     result:=TSysResult(-1);
     result:=TSysResult(-1);
@@ -139,7 +139,7 @@ begin
     trap #0
     trap #0
     move.l d0, @Result
     move.l d0, @Result
   end ['d0', 'd1', 'd2', 'd3', 'd4', 'd5', 'a0'];
   end ['d0', 'd1', 'd2', 'd3', 'd4', 'd5', 'a0'];
-  if (result < 0) then
+  if (ptruint(result) > ptruint(-4096)) then
   begin
   begin
     seterrno(-result);
     seterrno(-result);
     result:=TSysResult(-1);
     result:=TSysResult(-1);