git: nvi - Work around problem with git

Matthew Dillon dillon at
Thu Feb 18 16:35:55 PST 2010

commit d5259c7eeb46c2eeb3f47774c27ec0ec705e9234
Author: Matthew Dillon <dillon at>
Date:   Thu Feb 18 16:32:39 2010 -0800

    nvi - Work around problem with git
    * When a vi session managed by a git commit is ^Z'd and then resumed, git
      for some reason will set STDIN to O_NONBLOCKING.  Not only will it do
      this, but the git process will do it in parallel with the resume so
      the point at which stdin becomes non-blocking from the point of view
      of vi is completely non-determinisitc.
    * Do an end-run around badly behaving parent processes by using extpread()
      to explicitly override the blocking/non-blocking mode.  Now nvi doesn't
      care whether stdin is in non-blocking mode or not.

Summary of changes:
 contrib/nvi/cl/cl_read.c |    6 ++++--
 test/test/baaz           |    2 ++
 2 files changed, 6 insertions(+), 2 deletions(-)

DragonFly BSD source repository

More information about the Commits mailing list