diff src/syntax.c @ 8806:8fff73f17ff1 v7.4.1691

commit https://github.com/vim/vim/commit/b681be175b6991cdc2b8ddd49b0e97e3fe2b201e Author: Bram Moolenaar <Bram@vim.org> Date: Thu Mar 31 23:02:16 2016 +0200 patch 7.4.1691 Problem: When switching to a new buffer and an autocommand applies syntax highlighting an ml_get error may occur. Solution: Check "syn_buf" against the buffer in the window. (Alexander von Buddenbrock, closes #676)
author Christian Brabandt <cb@256bit.org>
date Thu, 31 Mar 2016 23:15:05 +0200
parents 24b43dd167eb
children 50d9fb580ffe
line wrap: on
line diff
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -509,7 +509,9 @@ syntax_start(win_T *wp, linenr_T lnum)
      * Also do this when a change was made, the current state may be invalid
      * then.
      */
-    if (syn_block != wp->w_s || changedtick != syn_buf->b_changedtick)
+    if (syn_block != wp->w_s
+	    || syn_buf != wp->w_buffer
+	    || changedtick != syn_buf->b_changedtick)
     {
 	invalidate_current_state();
 	syn_buf = wp->w_buffer;