Mercurial > vim
view runtime/syntax/sieve.vim @ 32325:aa90a1f1a523 v9.0.1494
patch 9.0.1494: crash when recovering from corrupted swap file
Commit: https://github.com/vim/vim/commit/bf1b7132021bac0fccefebb4a1c24a5f372bae4f
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Apr 27 21:13:12 2023 +0100
patch 9.0.1494: crash when recovering from corrupted swap file
Problem: Crash when recovering from corrupted swap file.
Solution: Bail out when the line index looks wrong. (closes https://github.com/vim/vim/issues/12276)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 27 Apr 2023 22:15:02 +0200 |
parents | 1218c5353e2b |
children |
line wrap: on
line source
" Vim syntax file " Language: Sieve filtering language input file " Previous Maintainer: Nikolai Weibull <now@bitwi.se> " Latest Revision: 2007-10-25 if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim syn keyword sieveTodo contained TODO FIXME XXX NOTE syn region sieveComment start='/\*' end='\*/' contains=sieveTodo,@Spell syn region sieveComment display oneline start='#' end='$' \ contains=sieveTodo,@Spell syn case ignore syn match sieveTag display ':\h\w*' syn match sieveNumber display '\<\d\+[KMG]\=\>' syn match sieveSpecial display '\\["\\]' syn region sieveString start=+"+ skip=+\\\\\|\\"+ end=+"+ \ contains=sieveSpecial syn region sieveString start='text:' end='\n.\n' syn keyword sieveConditional if elsif else syn keyword sieveTest address allof anyof envelope exists false header \ not size true syn keyword sievePreProc require stop syn keyword sieveAction reject fileinto redirect keep discard syn keyword sieveKeyword vacation syn case match hi def link sieveTodo Todo hi def link sieveComment Comment hi def link sieveTag Type hi def link sieveNumber Number hi def link sieveSpecial Special hi def link sieveString String hi def link sieveConditional Conditional hi def link sieveTest Keyword hi def link sievePreProc PreProc hi def link sieveAction Function hi def link sieveKeyword Keyword let b:current_syntax = "sieve" let &cpo = s:cpo_save unlet s:cpo_save