From: Jeffrey Altman Date: Sat, 17 Dec 2011 17:13:17 +0000 (-0500) Subject: Windows: notify file size change if flushed X-Git-Tag: openafs-stable-1_8_0pre1~2925 X-Git-Url: https://git.openafs.org/?p=openafs.git;a=commitdiff_plain;h=c29dc399769c54bbab4af5bd4f828f0d49755860 Windows: notify file size change if flushed When processing AFS_INVALIDATE_FLUSHED, notify any listeners that the file size has changed to force a complete refresh. Change-Id: Ie5f0076ea786357ae77ef6a76f162c776d555953 Reviewed-on: http://gerrit.openafs.org/6364 Reviewed-by: Jeffrey Altman Tested-by: BuildBot --- diff --git a/src/WINNT/afsrdr/kernel/lib/AFSGeneric.cpp b/src/WINNT/afsrdr/kernel/lib/AFSGeneric.cpp index 84cca30..7462d58 100644 --- a/src/WINNT/afsrdr/kernel/lib/AFSGeneric.cpp +++ b/src/WINNT/afsrdr/kernel/lib/AFSGeneric.cpp @@ -1741,7 +1741,8 @@ AFSInvalidateCache( IN AFSInvalidateCacheCB *InvalidateCB) ulFilter |= FILE_NOTIFY_CHANGE_SECURITY; } - if( InvalidateCB->Reason == AFS_INVALIDATE_DATA_VERSION) + if( InvalidateCB->Reason == AFS_INVALIDATE_DATA_VERSION || + InvalidateCB->Reason == AFS_INVALIDATE_FLUSHED) { ulFilter |= FILE_NOTIFY_CHANGE_SIZE | FILE_NOTIFY_CHANGE_LAST_WRITE; } @@ -2476,7 +2477,8 @@ AFSInvalidateVolume( IN AFSVolumeCB *VolumeCB, ulFilter |= FILE_NOTIFY_CHANGE_SECURITY; } - if( Reason == AFS_INVALIDATE_DATA_VERSION) + if( Reason == AFS_INVALIDATE_DATA_VERSION || + Reason == AFS_INVALIDATE_FLUSHED) { ulFilter |= FILE_NOTIFY_CHANGE_SIZE | FILE_NOTIFY_CHANGE_LAST_WRITE; } @@ -2553,7 +2555,8 @@ AFSInvalidateVolume( IN AFSVolumeCB *VolumeCB, ulFilter |= FILE_NOTIFY_CHANGE_SECURITY; } - if( Reason == AFS_INVALIDATE_DATA_VERSION) + if( Reason == AFS_INVALIDATE_DATA_VERSION || + Reason == AFS_INVALIDATE_FLUSHED) { ulFilter |= FILE_NOTIFY_CHANGE_SIZE | FILE_NOTIFY_CHANGE_LAST_WRITE; }