Check the value of the 'stl' setting on SessionLoadPost

Restoring a session using vim -S with 'sessionopts' including options,
might overwrite the statusline function.

fixes #1131
This commit is contained in:
Christian Brabandt 2016-04-21 20:03:42 +02:00
parent 86e7d19df1
commit a5f7b9520a
1 changed files with 2 additions and 1 deletions

View File

@ -41,6 +41,7 @@ function! s:on_window_changed()
" different autocommands.
let l:key = [bufnr('%'), winnr(), winnr('$')]
if get(t:, 'airline_last_window_changed', []) == l:key
\ && &stl =~? 'airline#statusline(\d\+)$'
return
endif
let t:airline_last_window_changed = l:key
@ -86,7 +87,7 @@ function! s:airline_toggle()
autocmd CmdwinLeave * call airline#remove_statusline_func('airline#cmdwinenter')
autocmd GUIEnter,ColorScheme * call <sid>on_colorscheme_changed()
autocmd VimEnter,WinEnter,BufWinEnter,FileType,BufUnload,VimResized *
autocmd SessionLoadPost,VimEnter,WinEnter,BufWinEnter,FileType,BufUnload,VimResized *
\ call <sid>on_window_changed()
autocmd TabEnter * :unlet! w:airline_lastmode