To: vim_dev@googlegroups.com Subject: Patch 7.3.290 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 7.3.290 Problem: When a BufWriteCmd autocommand resets 'modified' this doesn't change older buffer states to be marked as 'modified' like ":write" does. (Yukihiro Nakadaira) Solution: When the BufWriteCmd resets 'modified' then adjust the undo information like ":write" does. Files: src/fileio.c *** ../vim-7.3.289/src/fileio.c 2011-07-20 18:29:33.000000000 +0200 --- src/fileio.c 2011-08-29 21:49:27.000000000 +0200 *************** *** 3342,3349 **** } else if (reset_changed && whole) { ! if (!(did_cmd = apply_autocmds_exarg(EVENT_BUFWRITECMD, ! sfname, sfname, FALSE, curbuf, eap))) { #ifdef FEAT_QUICKFIX if (overwriting && bt_nofile(curbuf)) --- 3342,3363 ---- } else if (reset_changed && whole) { ! int was_changed = curbufIsChanged(); ! ! did_cmd = apply_autocmds_exarg(EVENT_BUFWRITECMD, ! sfname, sfname, FALSE, curbuf, eap); ! if (did_cmd) ! { ! if (was_changed && !curbufIsChanged()) ! { ! /* Written everything correctly and BufWriteCmd has reset ! * 'modified': Correct the undo information so that an ! * undo now sets 'modified'. */ ! u_unchanged(curbuf); ! u_update_save_nr(curbuf); ! } ! } ! else { #ifdef FEAT_QUICKFIX if (overwriting && bt_nofile(curbuf)) *** ../vim-7.3.289/src/version.c 2011-08-28 16:02:23.000000000 +0200 --- src/version.c 2011-09-02 11:37:25.000000000 +0200 *************** *** 711,712 **** --- 711,714 ---- { /* Add new patch number below this line */ + /**/ + 290, /**/ -- OLD WOMAN: Well, how did you become king, then? ARTHUR: The Lady of the Lake, her arm clad in the purest shimmering samite, held Excalibur aloft from the bosom of the water to signify by Divine Providence ... that I, Arthur, was to carry Excalibur ... That is why I am your king! "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD /// Bram Moolenaar -- Bram@Moolenaar.net -- 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 ///