summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libdiskfs/io-modes-set.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libdiskfs/io-modes-set.c b/libdiskfs/io-modes-set.c
index 5de51e52..6ecaa6fc 100644
--- a/libdiskfs/io-modes-set.c
+++ b/libdiskfs/io-modes-set.c
@@ -29,7 +29,8 @@ diskfs_S_io_set_all_openmodes (struct protid *cred,
mutex_lock (&cred->po->np->lock);
ioserver_get_conch (&cred->po->np->conch);
- cred->po->openstat = (newbits & HONORED_STATE_MODES);
+ cred->po->openstat &= ~HONORED_STATE_MODES;
+ cred->po->openstat |= (newbits & HONORED_STATE_MODES);
mutex_unlock (&cred->po->np->lock);
return 0;
}