diff --git a/src/add-ons/kernel/file_systems/nfs4/ReplyBuilder.cpp b/src/add-ons/kernel/file_systems/nfs4/ReplyBuilder.cpp index 152d5de25b..9dc3d30948 100644 --- a/src/add-ons/kernel/file_systems/nfs4/ReplyBuilder.cpp +++ b/src/add-ons/kernel/file_systems/nfs4/ReplyBuilder.cpp @@ -46,10 +46,13 @@ ReplyBuilder::_InitHeader() RPC::CallbackReply* ReplyBuilder::Reply() { + if (fReply == NULL) + return NULL; + fReply->Stream().InsertUInt(fStatusPosition, _HaikuErrorToNFS4(fStatus)); fReply->Stream().InsertUInt(fOpCountPosition, fOpCount); - if (fReply == NULL || fReply->Stream().Error() == B_OK) + if (fReply->Stream().Error() == B_OK) return fReply; else return NULL; diff --git a/src/add-ons/kernel/file_systems/nfs4/RequestBuilder.cpp b/src/add-ons/kernel/file_systems/nfs4/RequestBuilder.cpp index 3ee50fe18d..9b2d8a2943 100644 --- a/src/add-ons/kernel/file_systems/nfs4/RequestBuilder.cpp +++ b/src/add-ons/kernel/file_systems/nfs4/RequestBuilder.cpp @@ -806,10 +806,13 @@ RequestBuilder::ReleaseLockOwner(OpenState* state, LockOwner* owner) RPC::Call* RequestBuilder::Request() { + if (fRequest == NULL) + return NULL; + if (fProcedure == ProcCompound) fRequest->Stream().InsertUInt(fOpCountPosition, fOpCount); - if (fRequest == NULL || fRequest->Stream().Error() == B_OK) + if (fRequest->Stream().Error() == B_OK) return fRequest; else return NULL;