]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
vos: Don't call SubEnumerate twice
authorsanket <sanket@sanketagarwal.com>
Thu, 1 Jul 2010 22:05:24 +0000 (23:05 +0100)
committerDerrick Brashear <shadow@dementia.org>
Thu, 8 Jul 2010 14:48:32 +0000 (07:48 -0700)
Set a flag to say when we've called SubEnumerate, so that we don't
end up calling it twice when in -format mode

(Simon Wilkinson extracted this from a larger patch by sanket)

FIXES 41031

Change-Id: I2cadd536cb6c9f389330d64ffbf35a16d673d2de
Reviewed-on: http://gerrit.openafs.org/2320
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
src/volser/vos.c

index ec86de6a6761a70389368b45488f6b2d6f513518..69b52440a3187da988a03e19932232611ddd1633 100644 (file)
@@ -1579,7 +1579,7 @@ ExamineVolume(register struct cmd_syndesc *as, void *arock)
     afs_int32 apart;
     int previdx = -1;
     int wantExtendedInfo;      /*Do we want extended vol info? */
-
+    int isSubEnum=0;           /* Keep track whether sub enumerate called. */
     wantExtendedInfo = (as->parms[1].items ? 1 : 0);   /* -extended */
 
     volid = vsu_GetVolumeID(as->parms[0].items->data, cstruct, &err);  /* -id */
@@ -1669,6 +1669,7 @@ ExamineVolume(register struct cmd_syndesc *as, void *arock)
            else if (as->parms[2].items) {
                DisplayFormat2(aserver, apart, pntr);
                EnumerateEntry(&entry);
+               isSubEnum = 1;
            } else
                VolumeStats_int(pntr, &entry, aserver, apart, voltype);
 
@@ -1690,7 +1691,9 @@ ExamineVolume(register struct cmd_syndesc *as, void *arock)
        fprintf(STDERR, "Dump only information from VLDB\n\n");
        fprintf(STDOUT, "%s \n", entry.name);   /* PostVolumeStats doesn't print name */
     }
-    PostVolumeStats(&entry);
+
+    if (!isSubEnum)
+       PostVolumeStats(&entry);
 
     return (error);
 }