Mercurial > vim
view runtime/syntax/lyrics.vim @ 32301:15352bf5c33e v9.0.1482
patch 9.0.1482: crash when textprop has a very large "padding" value
Commit: https://github.com/vim/vim/commit/2354b66ac52a8a9165e8bd0d642e19e757ba12c3
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Apr 23 21:42:25 2023 +0100
patch 9.0.1482: crash when textprop has a very large "padding" value
Problem: Crash when textprop has a very large "padding" value. (Yegappan
Lakshmanan)
Solution: Avoid the "after" count to go negative.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 23 Apr 2023 22:45:04 +0200 |
parents | 0827d3d6d8c0 |
children | 7b4f0a2a87bf |
line wrap: on
line source
" Vim syntax file " Language: LyRiCs " Maintainer: ObserverOfTime <chronobserver@disroot.org> " Filenames: *.lrc " Last Change: 2022 Sep 18 if exists('b:current_syntax') finish endif let s:cpo_save = &cpoptions set cpoptions&vim syn case ignore " Errors syn match lrcError /^.\+$/ " ID tags syn match lrcTag /^\s*\[\a\+:.\+\]\s*$/ contains=lrcTagName,lrcTagValue syn match lrcTagName contained nextgroup=lrcTagValue \ /\[\zs\(al\|ar\|au\|by\|encoding\|la\|id\|length\|offset\|re\|ti\|ve\)\ze:/ syn match lrcTagValue /:\zs.\+\ze\]/ contained " Lyrics syn match lrcLyricTime /^\s*\[\d\d:\d\d\.\d\d\]/ \ contains=lrcNumber nextgroup=lrcLyricLine syn match lrcLyricLine /.*$/ contained contains=lrcWordTime,@Spell syn match lrcWordTime /<\d\d:\d\d\.\d\d>/ contained contains=lrcNumber,@NoSpell syn match lrcNumber /[+-]\=\d\+/ contained hi def link lrcLyricTime Label hi def link lrcNumber Number hi def link lrcTag PreProc hi def link lrcTagName Identifier hi def link lrcTagValue String hi def link lrcWordTime Special hi def link lrcError Error let b:current_syntax = 'lyrics' let &cpoptions = s:cpo_save unlet s:cpo_save