From 7f504091ecf0cec2316b9c5fa079836d56130624 Mon Sep 17 00:00:00 2001 From: Pawel Dziepak Date: Fri, 10 Aug 2012 02:56:44 +0200 Subject: [PATCH] nfs4: Fix directory cache revalidation when cache invalid --- src/add-ons/kernel/file_systems/nfs4/DirectoryCache.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/add-ons/kernel/file_systems/nfs4/DirectoryCache.cpp b/src/add-ons/kernel/file_systems/nfs4/DirectoryCache.cpp index 909f62956a..e7062c0567 100644 --- a/src/add-ons/kernel/file_systems/nfs4/DirectoryCache.cpp +++ b/src/add-ons/kernel/file_systems/nfs4/DirectoryCache.cpp @@ -185,6 +185,11 @@ DirectoryCache::Revalidate() } DirectoryCacheSnapshot* oldSnapshot = fDirectoryCache; + if (oldSnapshot == NULL) { + Trash(); + return B_ERROR; + } + oldSnapshot->AcquireReference(); Trash(); @@ -194,7 +199,7 @@ DirectoryCache::Revalidate() fAttrDir); if (result != B_OK) { oldSnapshot->ReleaseReference(); - return B_OK; + return B_ERROR; } newSnapshot->AcquireReference();