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

Patch 7.3.753

Expand Messages
  • Bram Moolenaar
    Patch 7.3.753 Problem: When there is a QuitPre autocommand using :q twice does not work for exiting when there are more files to edit. Solution: Do not
    Message 1 of 5 , Dec 5, 2012
    • 0 Attachment
      Patch 7.3.753
      Problem: When there is a QuitPre autocommand using ":q" twice does not work
      for exiting when there are more files to edit.
      Solution: Do not decrement quitmore in an autocommand. (Techlive Zheng)
      Files: src/ex_docmd.c, src/fileio.c, src/proto/fileio.pro


      *** ../vim-7.3.752/src/ex_docmd.c 2012-11-28 23:03:02.000000000 +0100
      --- src/ex_docmd.c 2012-12-05 19:07:01.000000000 +0100
      ***************
      *** 1729,1739 ****
      ++ex_nesting_level;
      #endif

      ! /* when not editing the last file :q has to be typed twice */
      if (quitmore
      #ifdef FEAT_EVAL
      /* avoid that a function call in 'statusline' does this */
      && !getline_equal(fgetline, cookie, get_func_line)
      #endif
      )
      --quitmore;
      --- 1729,1741 ----
      ++ex_nesting_level;
      #endif

      ! /* When the last file has not been edited :q has to be typed twice. */
      if (quitmore
      #ifdef FEAT_EVAL
      /* avoid that a function call in 'statusline' does this */
      && !getline_equal(fgetline, cookie, get_func_line)
      + /* avoid that an autocommand, e.g. QuitPre, does this */
      + && !getline_equal(fgetline, cookie, getnextac)
      #endif
      )
      --quitmore;
      *** ../vim-7.3.752/src/fileio.c 2012-08-29 18:50:50.000000000 +0200
      --- src/fileio.c 2012-12-05 19:08:17.000000000 +0100
      ***************
      *** 7774,7780 ****
      static int event_ignored __ARGS((event_T event));
      static int au_get_grouparg __ARGS((char_u **argp));
      static int do_autocmd_event __ARGS((event_T event, char_u *pat, int nested, char_u *cmd, int forceit, int group));
      - static char_u *getnextac __ARGS((int c, void *cookie, int indent));
      static int apply_autocmds_group __ARGS((event_T event, char_u *fname, char_u *fname_io, int force, int group, buf_T *buf, exarg_T *eap));
      static void auto_next_pat __ARGS((AutoPatCmd *apc, int stop_at_last));

      --- 7774,7779 ----
      ***************
      *** 9613,9619 ****
      * Called by do_cmdline() to get the next line for ":if".
      * Returns allocated string, or NULL for end of autocommands.
      */
      ! static char_u *
      getnextac(c, cookie, indent)
      int c UNUSED;
      void *cookie;
      --- 9612,9618 ----
      * Called by do_cmdline() to get the next line for ":if".
      * Returns allocated string, or NULL for end of autocommands.
      */
      ! char_u *
      getnextac(c, cookie, indent)
      int c UNUSED;
      void *cookie;
      *** ../vim-7.3.752/src/proto/fileio.pro 2012-02-29 18:22:03.000000000 +0100
      --- src/proto/fileio.pro 2012-12-05 19:08:24.000000000 +0100
      ***************
      *** 47,52 ****
      --- 47,53 ----
      int has_insertcharpre __ARGS((void));
      void block_autocmds __ARGS((void));
      void unblock_autocmds __ARGS((void));
      + char_u *getnextac __ARGS((int c, void *cookie, int indent));
      int has_autocmd __ARGS((event_T event, char_u *sfname, buf_T *buf));
      char_u *get_augroup_name __ARGS((expand_T *xp, int idx));
      char_u *set_context_in_autocmd __ARGS((expand_T *xp, char_u *arg, int doautocmd));
      *** ../vim-7.3.752/src/version.c 2012-12-05 19:00:03.000000000 +0100
      --- src/version.c 2012-12-05 19:08:34.000000000 +0100
      ***************
      *** 727,728 ****
      --- 727,730 ----
      { /* Add new patch number below this line */
      + /**/
      + 753,
      /**/

      --
      Laughing helps. It's like jogging on the inside.

      /// 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
    • Techlive Zheng
      在 2012年12月6日星期四UTC+8上午2时13分35秒,Bram Moolenaar写道: ... This is great. -- You received this message from the vim_dev maillist.
      Message 2 of 5 , Dec 7, 2012
      • 0 Attachment
        在 2012年12月6日星期四UTC+8上午2时13分35秒,Bram Moolenaar写道:
        > Patch 7.3.753
        >
        > Problem: When there is a QuitPre autocommand using ":q" twice does not work
        >
        > for exiting when there are more files to edit.
        >
        > Solution: Do not decrement quitmore in an autocommand. (Techlive Zheng)
        >
        > Files: src/ex_docmd.c, src/fileio.c, src/proto/fileio.pro
        >
        >
        >
        >
        >
        > *** ../vim-7.3.752/src/ex_docmd.c 2012-11-28 23:03:02.000000000 +0100
        >
        > --- src/ex_docmd.c 2012-12-05 19:07:01.000000000 +0100
        >
        > ***************
        >
        > *** 1729,1739 ****
        >
        > ++ex_nesting_level;
        >
        > #endif
        >
        >
        >
        > ! /* when not editing the last file :q has to be typed twice */
        >
        > if (quitmore
        >
        > #ifdef FEAT_EVAL
        >
        > /* avoid that a function call in 'statusline' does this */
        >
        > && !getline_equal(fgetline, cookie, get_func_line)
        >
        > #endif
        >
        > )
        >
        > --quitmore;
        >
        > --- 1729,1741 ----
        >
        > ++ex_nesting_level;
        >
        > #endif
        >
        >
        >
        > ! /* When the last file has not been edited :q has to be typed twice. */
        >
        > if (quitmore
        >
        > #ifdef FEAT_EVAL
        >
        > /* avoid that a function call in 'statusline' does this */
        >
        > && !getline_equal(fgetline, cookie, get_func_line)
        >
        > + /* avoid that an autocommand, e.g. QuitPre, does this */
        >
        > + && !getline_equal(fgetline, cookie, getnextac)
        >
        > #endif
        >
        > )
        >
        > --quitmore;
        >
        > *** ../vim-7.3.752/src/fileio.c 2012-08-29 18:50:50.000000000 +0200
        >
        > --- src/fileio.c 2012-12-05 19:08:17.000000000 +0100
        >
        > ***************
        >
        > *** 7774,7780 ****
        >
        > static int event_ignored __ARGS((event_T event));
        >
        > static int au_get_grouparg __ARGS((char_u **argp));
        >
        > static int do_autocmd_event __ARGS((event_T event, char_u *pat, int nested, char_u *cmd, int forceit, int group));
        >
        > - static char_u *getnextac __ARGS((int c, void *cookie, int indent));
        >
        > static int apply_autocmds_group __ARGS((event_T event, char_u *fname, char_u *fname_io, int force, int group, buf_T *buf, exarg_T *eap));
        >
        > static void auto_next_pat __ARGS((AutoPatCmd *apc, int stop_at_last));
        >
        >
        >
        > --- 7774,7779 ----
        >
        > ***************
        >
        > *** 9613,9619 ****
        >
        > * Called by do_cmdline() to get the next line for ":if".
        >
        > * Returns allocated string, or NULL for end of autocommands.
        >
        > */
        >
        > ! static char_u *
        >
        > getnextac(c, cookie, indent)
        >
        > int c UNUSED;
        >
        > void *cookie;
        >
        > --- 9612,9618 ----
        >
        > * Called by do_cmdline() to get the next line for ":if".
        >
        > * Returns allocated string, or NULL for end of autocommands.
        >
        > */
        >
        > ! char_u *
        >
        > getnextac(c, cookie, indent)
        >
        > int c UNUSED;
        >
        > void *cookie;
        >
        > *** ../vim-7.3.752/src/proto/fileio.pro 2012-02-29 18:22:03.000000000 +0100
        >
        > --- src/proto/fileio.pro 2012-12-05 19:08:24.000000000 +0100
        >
        > ***************
        >
        > *** 47,52 ****
        >
        > --- 47,53 ----
        >
        > int has_insertcharpre __ARGS((void));
        >
        > void block_autocmds __ARGS((void));
        >
        > void unblock_autocmds __ARGS((void));
        >
        > + char_u *getnextac __ARGS((int c, void *cookie, int indent));
        >
        > int has_autocmd __ARGS((event_T event, char_u *sfname, buf_T *buf));
        >
        > char_u *get_augroup_name __ARGS((expand_T *xp, int idx));
        >
        > char_u *set_context_in_autocmd __ARGS((expand_T *xp, char_u *arg, int doautocmd));
        >
        > *** ../vim-7.3.752/src/version.c 2012-12-05 19:00:03.000000000 +0100
        >
        > --- src/version.c 2012-12-05 19:08:34.000000000 +0100
        >
        > ***************
        >
        > *** 727,728 ****
        >
        > --- 727,730 ----
        >
        > { /* Add new patch number below this line */
        >
        > + /**/
        >
        > + 753,
        >
        > /**/
        >
        >
        >
        > --
        >
        > Laughing helps. It's like jogging on the inside.
        >
        >
        >
        > /// 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 ///

        This is great.

        --
        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
      • Gary Johnson
        ... [179 lines of patch deleted] ... I m glad the patch helps you and I m sure Bram appreciates the acknowledgement. But, would you and others please not
        Message 3 of 5 , Dec 7, 2012
        • 0 Attachment
          On 2012-12-07, Techlive Zheng wrote:
          > 在 2012年12月6日星期四UTC+8上午2时13分35秒,Bram Moolenaar写道:
          > > Patch 7.3.753
          > > Problem: When there is a QuitPre autocommand using ":q" twice does not work
          > > for exiting when there are more files to edit.
          > > Solution: Do not decrement quitmore in an autocommand. (Techlive Zheng)
          > > Files: src/ex_docmd.c, src/fileio.c, src/proto/fileio.pro

          [179 lines of patch deleted]

          > This is great.

          I'm glad the patch helps you and I'm sure Bram appreciates the
          acknowledgement. But, would you and others please not include the
          entire text of a patch in such replies unless you are commenting on
          specific parts of the patch?

          Regards,
          Gary

          --
          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
        • 郑文辉(Techlive Zheng)
          ... Sorry for that, I thought the google groups will automatically fold that, but it does not. I will notice next time. -- You received this message from the
          Message 4 of 5 , Dec 7, 2012
          • 0 Attachment
            2012/12/8 Gary Johnson <garyjohn@...>:
            > On 2012-12-07, Techlive Zheng wrote:
            >> 在 2012年12月6日星期四UTC+8上午2时13分35秒,Bram Moolenaar写道:
            >> > Patch 7.3.753
            >> > Problem: When there is a QuitPre autocommand using ":q" twice does not work
            >> > for exiting when there are more files to edit.
            >> > Solution: Do not decrement quitmore in an autocommand. (Techlive Zheng)
            >> > Files: src/ex_docmd.c, src/fileio.c, src/proto/fileio.pro
            >
            > [179 lines of patch deleted]
            >
            >> This is great.
            >
            > I'm glad the patch helps you and I'm sure Bram appreciates the
            > acknowledgement. But, would you and others please not include the
            > entire text of a patch in such replies unless you are commenting on
            > specific parts of the patch?
            >
            > Regards,
            > Gary
            >

            Sorry for that, I thought the google groups will automatically fold
            that, but it does not. I will notice next time.

            --
            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
          • ZyX
            ... It does. But not all mail clients do the same. -- You received this message from the vim_dev maillist. Do not top-post! Type your reply below the text
            Message 5 of 5 , Dec 7, 2012
            • 0 Attachment
              > Sorry for that, I thought the google groups will automatically fold
              > that, but it does not. I will notice next time.

              It does. But not all mail clients do the same.

              --
              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.