Browse Source

* don't perform fmShareDenyNone/fmShareExclusive check for unix, as it
cannot be implemented there

git-svn-id: trunk@12674 -

Jonas Maebe 16 years ago
parent
commit
adaae268ae
1 changed files with 6 additions and 0 deletions
  1. 6 0
      tests/test/units/sysutils/tfile2.pp

+ 6 - 0
tests/test/units/sysutils/tfile2.pp

@@ -141,12 +141,18 @@ begin
       if (l2 < 0) then
       if (l2 < 0) then
         raise exception.create('opening two files as read-only with fmShareDenyNone and then fmShareDenyWrite failed');
         raise exception.create('opening two files as read-only with fmShareDenyNone and then fmShareDenyWrite failed');
       fileclose(l2);
       fileclose(l2);
+{ on Windows, fmShareExclusive checks whether the file is already open in any way by the current
+  or another process. On Unix, that is not the case, and we also cannot check against a
+  fmShareDenyNone mode
+}
+{$ifndef unix}
       l2:=fileopen('tfile2.dat',fmopenread or fmShareExclusive);
       l2:=fileopen('tfile2.dat',fmopenread or fmShareExclusive);
       if (l2 >= 0) then
       if (l2 >= 0) then
         begin
         begin
           fileclose(l2);
           fileclose(l2);
           raise exception.create('opening two files as read-only with fmShareDenyNone and then fmShareExclusive succeeded');
           raise exception.create('opening two files as read-only with fmShareDenyNone and then fmShareExclusive succeeded');
         end;
         end;
+{$endif}
       fileclose(l);
       fileclose(l);
 
 
       l:=fileopen('tfile2.dat',fmopenread or fmShareDenyWrite);
       l:=fileopen('tfile2.dat',fmopenread or fmShareDenyWrite);