Simplify the sandbox check, to save on execution time
This commit is contained in:
parent
6f76a840f0
commit
c31cd12bdd
2 changed files with 8 additions and 4 deletions
|
@ -80,13 +80,11 @@ endfunction
|
|||
" See :help sandbox
|
||||
function! ale#util#InSandbox() abort
|
||||
try
|
||||
call setbufvar('%', '', '')
|
||||
function! s:SandboxCheck() abort
|
||||
endfunction
|
||||
catch /^Vim\%((\a\+)\)\=:E48/
|
||||
" E48 is the sandbox error.
|
||||
return 1
|
||||
catch
|
||||
" If we're not in a sandbox, we'll get another error about an
|
||||
" invalid buffer variable name.
|
||||
endtry
|
||||
|
||||
return 0
|
||||
|
|
|
@ -27,12 +27,18 @@ After:
|
|||
delfunction TestCallback
|
||||
call ale#linter#Reset()
|
||||
let g:ale_buffer_info = {}
|
||||
unlet! b:in_sandbox
|
||||
|
||||
Given foobar (Some imaginary filetype):
|
||||
foo
|
||||
bar
|
||||
baz
|
||||
|
||||
Execute(ale#util#InSandbox should return 1 when in a sandbox):
|
||||
sandbox let b:in_sandbox = ale#util#InSandbox()
|
||||
|
||||
Assert b:in_sandbox, 'ale#util#InSandbox() returned 0 for a sandbox command'
|
||||
|
||||
Execute(ALE shouldn't blow up when run from a sandbox):
|
||||
AssertEqual 'foobar', &filetype
|
||||
|
||||
|
|
Reference in a new issue