Resend for vger archives. Damn that Android GMail client. On Sat, Mar 17, 2012 at 03:48, David Aguilar <davvid@xxxxxxxxx> wrote: > On Fri, Mar 16, 2012 at 6:59 PM, Tim Henigan <tim.henigan@xxxxxxxxx> wrote: >> The Git.pm module includes functions intended to standardize working >> with Git repositories in Perl scripts. This commit teaches difftool >> to use Git::command_noisy rather than a system call to run the diff >> command. > > Git::command_noisy() calls _cmd_exec() which calls _execv_git_cmd() > which does a fork() + exec('git', @_) + waitpid(); > > We were avoiding exec() for portability reasons, as Alex explained in > 677fbff88f368ed6ac52438ddbb530166ec1d5d1: > > # ActiveState Perl for Win32 does not implement POSIX semantics of > # exec* system call. It just spawns the given executable and finishes > # the starting program, exiting with code 0. > # system will at least catch the errors returned by git diff, > # allowing the caller of git difftool better handling of failures. > > Is this no longer a concern? Does Git.pm need a similar portability > caveat, or does it avoid the problem altogether since it uses fork() > + exec() + waitpid()? (if this is true then it implies that this > change is fine). It _might_ work. Cygwin kind of has fork(2), it even works (kind of: it is a *very* expensive thing to do). There are also other ifs and whens, but it is worth a test. It's a nice clean up to have. -- 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