aboutsummaryrefslogtreecommitdiff
path: root/runtime/ftplugin/perl.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/ftplugin/perl.vim')
-rw-r--r--runtime/ftplugin/perl.vim10
1 files changed, 6 insertions, 4 deletions
diff --git a/runtime/ftplugin/perl.vim b/runtime/ftplugin/perl.vim
index 4361097f32..f3de81debe 100644
--- a/runtime/ftplugin/perl.vim
+++ b/runtime/ftplugin/perl.vim
@@ -54,10 +54,12 @@ endif
" Set this once, globally.
if !exists("perlpath")
- " safety check: don't execute perl from current directory
let s:tmp_cwd = getcwd()
- if executable("perl") && (fnamemodify(exepath("perl"), ":p:h") != s:tmp_cwd
- \ || (index(split($PATH,has("win32")? ';' : ':'), s:tmp_cwd) != -1 && s:tmp_cwd != '.'))
+ " safety check: don't execute perl binary by default
+ if executable("perl") && get(g:, 'perl_exec', get(g:, 'plugin_exec', 0))
+ \ && (fnamemodify(exepath("perl"), ":p:h") != s:tmp_cwd
+ \ || (index(split($PATH, has("win32") ? ';' : ':'), s:tmp_cwd) != -1
+ \ && s:tmp_cwd != '.'))
try
if &shellxquote != '"'
let perlpath = system('perl -e "print join(q/,/,@INC)"')
@@ -73,7 +75,7 @@ if !exists("perlpath")
" current directory and the directory of the current file.
let perlpath = ".,,"
endif
- unlet s:tmp_cwd
+ unlet! s:tmp_cwd
endif
" Append perlpath to the existing path value, if it is set. Since we don't