Double u, tee, ef
You can look at this post as either a sequal to a post I made few days ago, or as another sequal to a post I made about a year ago.
So, while doing some more cleanup, Dave Quigley discovered this gem in Unionfs:
for (bindex = bstart - 1; bindex >= 0; bindex--) { err = copyup_file(dentry->d_parent->d_inode, file, bstart, bindex, file->f_dentry->d_inode->i_size); if (!err) break; else continue; }
The particular piece of interest is the if statement:
if (!err) break; else continue;
What does it mean? If there is no error, we break out of the loop. Makes sense. If there is an error, we go to the top of the loop. Makes sense…right? Well, what happens if you reach the end of a for loop? We go to the top of the loop! See the brain damage? We are at the end of the loop, so we don’t need an explicit continue statement.
Here’s the if statement the way it should be (for completeness):
if (!err) break;
Oh, so simple, it almost brings a tear into one’s eye.
Comment by unknown — January 1, 1970 @ 00:00
Comment by unknown — January 1, 1970 @ 00:00