I found a bug in undo.c while trying to build Vim 7.3 for the first time on my Cygwin 1.5 system. The problem is that the condition of an 'if' contains a pair of parentheses, but only the closing parenthesis is contained within an #ifdef. I didn't see any reason for the parentheses, so I removed them both.
The problem exists at changeset 7a57fe6a5157. The output of "hg diff" is included below. Regards, Gary -------------------------------------------------------------------- diff -r 7a57fe6a5157 src/undo.c --- a/src/undo.c Wed Jul 21 16:00:43 2010 +0200 +++ b/src/undo.c Wed Jul 21 09:01:14 2010 -0700 @@ -1437,10 +1437,10 @@ * this fails, set the protection bits for the group same as the * protection bits for others. */ - if (st_old_valid && (mch_stat((char *)file_name, &st_new) >= 0 + if (st_old_valid && mch_stat((char *)file_name, &st_new) >= 0 && st_new.st_gid != st_old.st_gid # ifdef HAVE_FCHOWN /* sequent-ptx lacks fchown() */ - && fchown(fd, (uid_t)-1, st_old.st_gid) != 0) + && fchown(fd, (uid_t)-1, st_old.st_gid) != 0 # endif ) mch_setperm(file_name, (perm & 0707) | ((perm & 07) << 3)); -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php