]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
Windows: correct CheckOfflineVolumeState logic
authorJeffrey Altman <jaltman@your-file-system.com>
Tue, 30 Aug 2011 13:49:11 +0000 (09:49 -0400)
committerJeffrey Altman <jaltman@openafs.org>
Tue, 30 Aug 2011 15:30:13 +0000 (08:30 -0700)
Do not blindly set the return 'online' state to TRUE if
the state has not in fact changed.

Do not blindly clear the 'alldown' flag without checking the
actual 'down' state of the file server.

Change-Id: Iaad401be067513e2bf42609f0b0d407ba5c6302d
Reviewed-on: http://gerrit.openafs.org/5323
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
src/WINNT/afsd/cm_volume.c

index fdab257827f07826544d03690a89fe9bce427ebb..3971167f9be50a2b185e02e586ef89a15d2d8b5d 100644 (file)
@@ -1244,8 +1244,9 @@ cm_CheckOfflineVolumeState(cm_volume_t *volp, cm_vol_state_t *statep, afs_uint32
                     continue;
 
                 alldeleted = 0;
-                *onlinep = 1;
-                alldown = 0;
+
+                if (!(serversp->server->flags & CM_SERVERFLAG_DOWN))
+                    alldown = 0;
 
                 if (serversp->status == srv_busy || serversp->status == srv_offline)
                     serversp->status = srv_not_busy;