[2590] in Athena Bugs

home help back first fref pref prev next nref lref last post

afsd

daemon@ATHENA.MIT.EDU (John Carr)
Wed Jul 19 04:03:45 1989

To: bugs@ATHENA.MIT.EDU
Date: Wed, 19 Jul 89 04:03:23 EDT
From: John Carr <jfc@ATHENA.MIT.EDU>

Lines 632 to 659 of paris:/u3/afs/src/afsd/afsd.c read 

+++++
	/*
         * Create all the cache files that are missing.
         */
    if (missing_DCacheFile) {
	if (afsd_verbose)
	    printf("%s: Creating '%s'\n",
		   rn, fullpn_DCacheFile);
	if (CreateCacheFile(fullpn_DCacheFile))
	    printf("%s: Can't create '%s'\n",
		   rn, fullpn_DCacheFile);
    }
    else if (missing_VolInfoFile) {
	if (afsd_verbose)
	    printf("%s: Creating '%s'\n",
		   rn, fullpn_VolInfoFile);
	if (CreateCacheFile(fullpn_VolInfoFile))
	    printf("%s: Can't create '%s'\n",
		   rn, fullpn_VolInfoFile);
    }
    else if (missing_AFSLogFile) {
	if (afsd_verbose)
	    printf("%s: Creating '%s'\n",
		   rn, fullpn_AFSLogFile);
	if (CreateCacheFile(fullpn_AFSLogFile))
	    printf("%s: Can't create '%s'\n",
		   rn, fullpn_AFSLogFile);
    }
+++++

The logic here appears to be faulty.  Since the missing log files are
independent of each other, and any combination of them could be missing,
"else if" is inappropriate.  The 2 "else"s should be deleted.

  --John Carr

home help back first fref pref prev next nref lref last post