From 349c1f53383ee26eb13729d703b0b9e89865ec0c Mon Sep 17 00:00:00 2001 From: Jeffrey Altman Date: Fri, 22 Jun 2012 16:46:23 -0400 Subject: [PATCH] Windows: Dir Invalidation Notify Current Object When an invalidation is processed for a directory object, send the notification on the directory object that was invalidated not its parent. Change-Id: I2f5e698e451576891a82364058baee3dc6717362 Reviewed-on: http://gerrit.openafs.org/7642 Tested-by: BuildBot Reviewed-by: Jeffrey Altman Tested-by: Jeffrey Altman --- src/WINNT/afsrdr/kernel/lib/AFSGeneric.cpp | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/WINNT/afsrdr/kernel/lib/AFSGeneric.cpp b/src/WINNT/afsrdr/kernel/lib/AFSGeneric.cpp index ac81d7c3c..ba6ba809a 100644 --- a/src/WINNT/afsrdr/kernel/lib/AFSGeneric.cpp +++ b/src/WINNT/afsrdr/kernel/lib/AFSGeneric.cpp @@ -1843,10 +1843,22 @@ AFSInvalidateObject( IN OUT AFSObjectInfoCB **ppObjectInfo, ulFilter |= FILE_NOTIFY_CHANGE_ATTRIBUTES; } - AFSFsRtlNotifyFullReportChange( (*ppObjectInfo)->ParentObjectInformation, - NULL, - ulFilter, - FILE_ACTION_MODIFIED); + if( (*ppObjectInfo)->FileType == AFS_FILE_TYPE_DIRECTORY) + { + + AFSFsRtlNotifyFullReportChange( (*ppObjectInfo), + NULL, + ulFilter, + FILE_ACTION_MODIFIED); + } + else + { + + AFSFsRtlNotifyFullReportChange( (*ppObjectInfo)->ParentObjectInformation, + NULL, + ulFilter, + FILE_ACTION_MODIFIED); + } // // Indicate this node requires re-evaluation for the remaining reasons -- 2.39.5