From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <3FF2EA69.9030704@Princeton.EDU> From: Martin Harriss User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.2) Gecko/20030208 Netscape/7.02 MIME-Version: 1.0 To: 9fans@cse.psu.edu Subject: Re: [9fans] /sys/src/cmd/chmod.c References: <20031231163240.Z25949@cackle.proxima.alt.za> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Date: Wed, 31 Dec 2003 10:25:29 -0500 Topicbox-Message-UUID: b0bb0f6e-eacc-11e9-9e20-41e7f4b1d025 Defensive programming? Martin Lucio De Re wrote: > This struck me, looking at recent changes to chmod(1) which allow one > to flag a file as "not to be included in nightly archives": > > for(; *s ; s++){ > switch(*s){ > case 'r': > mode |= A(DMREAD); break; > case 'w': > mode |= A(DMWRITE); break; > case 'x': > mode |= A(DMEXEC); break; > case 'a': > mode |= DMAPPEND; break; > case 'l': > mode |= DMEXCL; break; > case 't': > mode |= DMTMP; break; > default: > return 0; > } > } > if(*s != 0) > return 0; > > I can't see how *s can be non-zero on exit from the for loop. Is > my C programming _so_ rusty?! > > ++L >