From 7bd70cf488e225c1d7b9df0be3b0d43c42d10de7 Mon Sep 17 00:00:00 2001 From: Casey Bodley Date: Mon, 9 Apr 2012 11:43:19 -0400 Subject: [PATCH] ea: defer storing mode until SetEaInfo succeeds on SetEaInfo for NfsV3Attributes, wait to set nfs41_fcb.mode until the upcall returns successfully Signed-off-by: Casey Bodley --- sys/nfs41_driver.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/nfs41_driver.c b/sys/nfs41_driver.c index a925e65..15006ff 100644 --- a/sys/nfs41_driver.c +++ b/sys/nfs41_driver.c @@ -4471,7 +4471,7 @@ NTSTATUS nfs41_SetEaInformation( print_nfs3_attrs(attrs); DbgP("old mode is %o new mode is %o\n", nfs41_fcb->mode, attrs->mode); #endif - entry->u.SetEa.mode = nfs41_fcb->mode = attrs->mode; + entry->u.SetEa.mode = attrs->mode; } else { entry->u.SetEa.mode = 0; status = IoCheckEaBufferValidity(eainfo, buflen, &error_offset); @@ -4499,6 +4499,7 @@ NTSTATUS nfs41_SetEaInformation( (FILE_READ_DATA | FILE_WRITE_DATA | FILE_APPEND_DATA))) nfs41_update_fcb_list(RxContext->pFcb, entry->u.SetEa.ChangeTime); nfs41_fcb->changeattr = entry->u.SetEa.ChangeTime; + nfs41_fcb->mode = entry->u.SetEa.mode; } RxFreePool(entry); out: