On Mon, Jul 20, 2015 at 7:55 AM, Philip Oakley <philipoakley@xxxxxxx> wrote: > From: "Eric Sunshine" <sunshine@xxxxxxxxxxxxxx> >> Although that works, I'm not sure that it's really all that desirable >> due to the unnecessary and potentially confusing 'for' loop. I'd >> probably just write it as: >> >> unlink $ErrsFile if -f $ErrsFile && !-s _; >> >> The lone '_' is magical[1] in that it re-uses the stat() information >> from the -f rather than stat'ing $ErrsFile again. I'd also probably >> replace !-s ("not non-zero size") with -z ("zero size"): >> >> unlink $ErrsFile if -f $ErrsFile && -z _; >> >> And, if you're using Perl 5.10 or later, > > The Msysgit (@1.9.5) uses perl v5.8.8, while the newer G4W SDK uses perl > 5, version 20, subversion 2 (v5.20.2), so there is a decision to be made > about whether to leave the Msysgit version behind. > > While it would be nice to use the newest version, I'm minded that we > should keep a little backward compatibility with Msysgit, at least until > the new G4w has had a few 'proper' releases, so not use the magic > suggestion below. > >> you could use a little >> syntactic sugar[1] and stack the file test operators up against one >> another: >> >> unlink $ErrsFile if -f -z $ErrsFile; Since msysgit is only at Perl 5.8.8, it makes plenty of sense to just stick with: unlink $ErrsFile if -f $ErrsFile && -z _; since it's only a tiny bit more verbose than: unlink $ErrsFile if -f -z $ErrsFile; and then you don't have to worry about needing a more modern Perl version. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html