aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/nfs/FileReader.cxx
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/lib/nfs/FileReader.cxx10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/lib/nfs/FileReader.cxx b/src/lib/nfs/FileReader.cxx
index 79256492b..455165bbd 100644
--- a/src/lib/nfs/FileReader.cxx
+++ b/src/lib/nfs/FileReader.cxx
@@ -56,8 +56,18 @@ NfsFileReader::Close()
return;
}
+ /* this cancels State::MOUNT */
connection->RemoveLease(*this);
+ CancelOrClose();
+}
+
+void
+NfsFileReader::CancelOrClose()
+{
+ assert(state != State::INITIAL &&
+ state != State::DEFER);
+
if (state == State::IDLE)
/* no async operation in progress: can close
immediately */