aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjörn Linse <bjorn.linse@gmail.com>2019-08-14 22:36:43 +0200
committerJustin M. Keyes <justinkz@gmail.com>2019-08-14 22:36:43 +0200
commit48b43352b052392418888c5a10c7802e7388a24a (patch)
tree2948a374e9ae7a7c58847707cacd9c9723906790
parentebcb9adcc4d06fc0741155989082945ef6da154c (diff)
downloadrneovim-48b43352b052392418888c5a10c7802e7388a24a.tar.gz
rneovim-48b43352b052392418888c5a10c7802e7388a24a.tar.bz2
rneovim-48b43352b052392418888c5a10c7802e7388a24a.zip
pyxversion: fix logic error #10759
Do not incorrectly prefer python2 if python3 is working. fixes #10758
-rw-r--r--src/nvim/eval.c8
-rw-r--r--src/nvim/ex_cmds2.c4
-rw-r--r--test/functional/provider/python3_spec.lua6
3 files changed, 8 insertions, 10 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c
index a3a66a5764..6703d15be0 100644
--- a/src/nvim/eval.c
+++ b/src/nvim/eval.c
@@ -13640,10 +13640,6 @@ static void f_pumvisible(typval_T *argvars, typval_T *rettv, FunPtr fptr)
*/
static void f_pyeval(typval_T *argvars, typval_T *rettv, FunPtr fptr)
{
- if (p_pyx == 0) {
- p_pyx = 2;
- }
-
script_host_eval("python", argvars, rettv);
}
@@ -13652,10 +13648,6 @@ static void f_pyeval(typval_T *argvars, typval_T *rettv, FunPtr fptr)
*/
static void f_py3eval(typval_T *argvars, typval_T *rettv, FunPtr fptr)
{
- if (p_pyx == 0) {
- p_pyx = 3;
- }
-
script_host_eval("python3", argvars, rettv);
}
diff --git a/src/nvim/ex_cmds2.c b/src/nvim/ex_cmds2.c
index 408c6dce79..df23d0630a 100644
--- a/src/nvim/ex_cmds2.c
+++ b/src/nvim/ex_cmds2.c
@@ -2830,9 +2830,9 @@ void ex_options(exarg_T *eap)
void init_pyxversion(void)
{
if (p_pyx == 0) {
- if (!eval_has_provider("python3")) {
+ if (eval_has_provider("python3")) {
p_pyx = 3;
- } else if (!eval_has_provider("python")) {
+ } else if (eval_has_provider("python")) {
p_pyx = 2;
}
}
diff --git a/test/functional/provider/python3_spec.lua b/test/functional/provider/python3_spec.lua
index 68d4d1e2a1..a3c6c57a73 100644
--- a/test/functional/provider/python3_spec.lua
+++ b/test/functional/provider/python3_spec.lua
@@ -90,6 +90,12 @@ describe('python3 provider', function()
eq({1, 2, {['key'] = 'val'}}, eval([[py3eval('[1, 2, {"key": "val"}]')]]))
end)
+ it('pyxeval #10758', function()
+ eq(0, eval([[&pyxversion]]))
+ eq(3, eval([[pyxeval('sys.version_info[:3][0]')]]))
+ eq(3, eval([[&pyxversion]]))
+ end)
+
it('RPC call to expand("<afile>") during BufDelete #5245 #5617', function()
source([=[
python3 << EOF