butc: initialize startTime before it is used
authorGarrett Wollman <wollman@csail.mit.edu>
Sun, 7 Aug 2011 03:36:14 +0000 (23:36 -0400)
committerDerrick Brashear <shadow@dementia.org>
Sun, 7 Aug 2011 15:55:37 +0000 (08:55 -0700)
In some unusual error situations, startTime may be used uninitialized.
Move the initialization up above the first such error condition.
(None of the intervening code can take measurably long to execute
so this should not make any difference in the non-error case.)

Change-Id: I25bf7a5e149540593febec79f9f5111434807514
Found-by: clang static analyzer
Reviewed-on: http://gerrit.openafs.org/5165
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>

src/butc/lwps.c

index 1d80c9b..f479b78 100644 (file)
@@ -1647,6 +1647,7 @@ Restorer(void *param) {
     printf("\n\n");
     TLog(taskId, "Restore\n");
 
+    startTime = time(0);
     memset(&tapeInfo, 0, sizeof(tapeInfo));
     if (!CONF_XBSA) {
        tapeInfo.structVersion = BUTM_MAJORVERSION;
@@ -1682,7 +1683,6 @@ Restorer(void *param) {
        ERROR_EXIT(TC_NOMEMORY);
     memset(bufferBlock, 0, allocbufferSize);
 
-    startTime = time(0);
     for (rparams.frag = 0; (rparams.frag < newNode->arraySize);
         rparams.frag++) {
        RestoreDesc = &Restore[rparams.frag];