Initial original import from: fuse-2.4.2-2.fc4
[captive.git] / src / client / fuse / op_open.c
index 9134f8e..9f63503 100644 (file)
@@ -44,8 +44,8 @@ GnomeVFSResult errvfsresult;
 
        if (GNOME_VFS_OK!=(errvfsresult=captive_file_new_open(&captive_file_object,capfuse_captive_vfs_object,path,
                        GNOME_VFS_OPEN_RANDOM
-                                       || (fi->flags&(O_RDONLY|O_RDWR)          ? 0 : GNOME_VFS_OPEN_READ)
-                                       || (fi->flags&(O_WRONLY|O_RDWR|O_APPEND) ? 0 : GNOME_VFS_OPEN_WRITE))))
+                                       || (!(fi->flags&(O_RDONLY|O_RDWR))          ? 0 : GNOME_VFS_OPEN_READ)
+                                       || (!(fi->flags&(O_WRONLY|O_RDWR|O_APPEND)) ? 0 : GNOME_VFS_OPEN_WRITE))))
                return -gnomevfsresult_to_errno(errvfsresult);
 
        fi->fh=(unsigned long)captive_file_object;