Loading ...
Sorry, an error occurred while loading the content.

Patch 7.3.268

Expand Messages
  • Bram Moolenaar
    Patch 7.3.268 Problem: Vim freezes when executing an external command with zsh. Solution: Use O_NOCTTY both in the master and slave. (Bjorn Winckler)
    Message 1 of 1 , Aug 4, 2011
    View Source
    • 0 Attachment
      Patch 7.3.268
      Problem: Vim freezes when executing an external command with zsh.
      Solution: Use O_NOCTTY both in the master and slave. (Bjorn Winckler)
      Files: src/os_unix.c


      *** ../vim-7.3.267/src/os_unix.c 2011-07-07 16:20:45.000000000 +0200
      --- src/os_unix.c 2011-08-04 19:06:14.000000000 +0200
      ***************
      *** 3889,3899 ****
      if (p_guipty && !(options & (SHELL_READ|SHELL_WRITE)))
      {
      pty_master_fd = OpenPTY(&tty_name); /* open pty */
      ! if (pty_master_fd >= 0 && ((pty_slave_fd =
      ! open(tty_name, O_RDWR | O_EXTRA, 0)) < 0))
      {
      ! close(pty_master_fd);
      ! pty_master_fd = -1;
      }
      }
      /*
      --- 3889,3909 ----
      if (p_guipty && !(options & (SHELL_READ|SHELL_WRITE)))
      {
      pty_master_fd = OpenPTY(&tty_name); /* open pty */
      ! if (pty_master_fd >= 0)
      {
      ! /* Leaving out O_NOCTTY may lead to waitpid() always returning
      ! * 0 on Mac OS X 10.7 thereby causing freezes. Let's assume
      ! * adding O_NOCTTY always works when defined. */
      ! #ifdef O_NOCTTY
      ! pty_slave_fd = open(tty_name, O_RDWR | O_NOCTTY | O_EXTRA, 0);
      ! #else
      ! pty_slave_fd = open(tty_name, O_RDWR | O_EXTRA, 0);
      ! #endif
      ! if (pty_slave_fd < 0)
      ! {
      ! close(pty_master_fd);
      ! pty_master_fd = -1;
      ! }
      }
      }
      /*
      *** ../vim-7.3.267/src/version.c 2011-08-04 19:34:55.000000000 +0200
      --- src/version.c 2011-08-04 19:36:00.000000000 +0200
      ***************
      *** 711,712 ****
      --- 711,714 ----
      { /* Add new patch number below this line */
      + /**/
      + 268,
      /**/

      --
      Mental Floss prevents moral decay!

      /// Bram Moolenaar -- Bram@... -- http://www.Moolenaar.net \\\
      /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
      \\\ an exciting new programming language -- http://www.Zimbu.org ///
      \\\ help me help AIDS victims -- http://ICCF-Holland.org ///

      --
      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
    Your message has been successfully submitted and would be delivered to recipients shortly.