Merge #4991 'vim-patch:7.4.1140'

This commit is contained in:
Justin M. Keyes 2016-07-09 16:55:41 -04:00
commit 5573e1a350
3 changed files with 30 additions and 4 deletions

View File

@ -20169,11 +20169,15 @@ theend:
*/ */
static int eval_fname_script(char_u *p) static int eval_fname_script(char_u *p)
{ {
if (p[0] == '<' && (STRNICMP(p + 1, "SID>", 4) == 0 // Use mb_stricmp() because in Turkish comparing the "I" may not work with
|| STRNICMP(p + 1, "SNR>", 4) == 0)) // the standard library function.
if (p[0] == '<' && (mb_strnicmp(p + 1, (char_u *)"SID>", 4) == 0
|| mb_strnicmp(p + 1, (char_u *)"SNR>", 4) == 0)) {
return 5; return 5;
if (p[0] == 's' && p[1] == ':') }
if (p[0] == 's' && p[1] == ':') {
return 2; return 2;
}
return 0; return 0;
} }

View File

@ -559,7 +559,7 @@ static int included_patches[] = {
1143, 1143,
1142, 1142,
1141, 1141,
// 1140, 1140,
// 1139 NA // 1139 NA
// 1138 NA // 1138 NA
1137, 1137,

View File

@ -0,0 +1,22 @@
local helpers = require('test.functional.helpers')(after_each)
local clear, eval, eq = helpers.clear, helpers.eval, helpers.eq
local execute, source = helpers.execute, helpers.source
describe('viml', function()
before_each(clear)
it('parses `<SID>` with turkish locale', function()
execute('lang ctype tr_TR.UTF-8')
if string.find(eval('v:errmsg'), '^E197: ') then
pending("Locale tr_TR.UTF-8 not supported")
return
end
source([[
func! <sid>_dummy_function()
echo 1
endfunc
au VimEnter * call <sid>_dummy_function()
]])
eq(nil, string.find(eval('v:errmsg'), '^E129'))
end)
end)