Mercurial > vim
diff src/window.c @ 2253:12ebd6f6dfce vim73
Fixed: after ":ownsyntax perl" and ":e" syntax was cleared in other window.
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Sun, 06 Jun 2010 16:11:09 +0200 |
parents | a0b5918c33cc |
children | 4620acaf4814 |
line wrap: on
line diff
--- a/src/window.c +++ b/src/window.c @@ -1176,7 +1176,8 @@ win_init(newp, oldp, flags) newp->w_buffer = oldp->w_buffer; #ifdef FEAT_SYN_HL - newp->w_s = oldp->w_s; + /* TODO: use reference count? */ + newp->w_s = &(oldp->w_buffer->b_s); #endif oldp->w_buffer->b_nwindows++; newp->w_cursor = oldp->w_cursor; @@ -4408,18 +4409,13 @@ win_free(wp, tp) #endif /* FEAT_GUI */ #ifdef FEAT_SYN_HL - /* free independent synblock */ - if (wp->w_s != &wp->w_buffer->b_s) - { - syntax_clear(wp->w_s); - vim_free(wp->w_s); - } + reset_synblock(wp); /* free independent synblock */ #endif #ifdef FEAT_AUTOCMD if (wp != aucmd_win) #endif - win_remove(wp, tp); + win_remove(wp, tp); vim_free(wp); #ifdef FEAT_AUTOCMD