Mercurial > vim
comparison src/eval.c @ 14439:e4c553e9132b v8.1.0233
patch 8.1.0233: "safe" argument of call_vim_function() is always FALSE
commit https://github.com/vim/vim/commit/ded27a1febda3db7447958b60a7d791af514d124
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Aug 1 19:06:03 2018 +0200
patch 8.1.0233: "safe" argument of call_vim_function() is always FALSE
Problem: "safe" argument of call_vim_function() is always FALSE.
Solution: Remove the argument.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Wed, 01 Aug 2018 19:15:05 +0200 |
parents | c62601adad69 |
children | 0a3b9ecf7cb8 |
comparison
equal
deleted
inserted
replaced
14438:af83b1cb4702 | 14439:e4c553e9132b |
---|---|
1019 int | 1019 int |
1020 call_vim_function( | 1020 call_vim_function( |
1021 char_u *func, | 1021 char_u *func, |
1022 int argc, | 1022 int argc, |
1023 typval_T *argv, | 1023 typval_T *argv, |
1024 typval_T *rettv, | 1024 typval_T *rettv) |
1025 int safe) /* use the sandbox */ | |
1026 { | 1025 { |
1027 int doesrange; | 1026 int doesrange; |
1028 void *save_funccalp = NULL; | |
1029 int ret; | 1027 int ret; |
1030 | |
1031 if (safe) | |
1032 { | |
1033 save_funccalp = save_funccal(); | |
1034 ++sandbox; | |
1035 } | |
1036 | 1028 |
1037 rettv->v_type = VAR_UNKNOWN; /* clear_tv() uses this */ | 1029 rettv->v_type = VAR_UNKNOWN; /* clear_tv() uses this */ |
1038 ret = call_func(func, (int)STRLEN(func), rettv, argc, argv, NULL, | 1030 ret = call_func(func, (int)STRLEN(func), rettv, argc, argv, NULL, |
1039 curwin->w_cursor.lnum, curwin->w_cursor.lnum, | 1031 curwin->w_cursor.lnum, curwin->w_cursor.lnum, |
1040 &doesrange, TRUE, NULL, NULL); | 1032 &doesrange, TRUE, NULL, NULL); |
1041 if (safe) | |
1042 { | |
1043 --sandbox; | |
1044 restore_funccal(save_funccalp); | |
1045 } | |
1046 | |
1047 if (ret == FAIL) | 1033 if (ret == FAIL) |
1048 clear_tv(rettv); | 1034 clear_tv(rettv); |
1049 | 1035 |
1050 return ret; | 1036 return ret; |
1051 } | 1037 } |
1058 */ | 1044 */ |
1059 varnumber_T | 1045 varnumber_T |
1060 call_func_retnr( | 1046 call_func_retnr( |
1061 char_u *func, | 1047 char_u *func, |
1062 int argc, | 1048 int argc, |
1063 typval_T *argv, | 1049 typval_T *argv) |
1064 int safe) /* use the sandbox */ | |
1065 { | 1050 { |
1066 typval_T rettv; | 1051 typval_T rettv; |
1067 varnumber_T retval; | 1052 varnumber_T retval; |
1068 | 1053 |
1069 if (call_vim_function(func, argc, argv, &rettv, safe) == FAIL) | 1054 if (call_vim_function(func, argc, argv, &rettv) == FAIL) |
1070 return -1; | 1055 return -1; |
1071 | 1056 |
1072 retval = get_tv_number_chk(&rettv, NULL); | 1057 retval = get_tv_number_chk(&rettv, NULL); |
1073 clear_tv(&rettv); | 1058 clear_tv(&rettv); |
1074 return retval; | 1059 return retval; |
1086 */ | 1071 */ |
1087 void * | 1072 void * |
1088 call_func_retstr( | 1073 call_func_retstr( |
1089 char_u *func, | 1074 char_u *func, |
1090 int argc, | 1075 int argc, |
1091 typval_T *argv, | 1076 typval_T *argv) |
1092 int safe) /* use the sandbox */ | |
1093 { | 1077 { |
1094 typval_T rettv; | 1078 typval_T rettv; |
1095 char_u *retval; | 1079 char_u *retval; |
1096 | 1080 |
1097 if (call_vim_function(func, argc, argv, &rettv, safe) == FAIL) | 1081 if (call_vim_function(func, argc, argv, &rettv) == FAIL) |
1098 return NULL; | 1082 return NULL; |
1099 | 1083 |
1100 retval = vim_strsave(get_tv_string(&rettv)); | 1084 retval = vim_strsave(get_tv_string(&rettv)); |
1101 clear_tv(&rettv); | 1085 clear_tv(&rettv); |
1102 return retval; | 1086 return retval; |
1111 */ | 1095 */ |
1112 void * | 1096 void * |
1113 call_func_retlist( | 1097 call_func_retlist( |
1114 char_u *func, | 1098 char_u *func, |
1115 int argc, | 1099 int argc, |
1116 typval_T *argv, | 1100 typval_T *argv) |
1117 int safe) /* use the sandbox */ | |
1118 { | 1101 { |
1119 typval_T rettv; | 1102 typval_T rettv; |
1120 | 1103 |
1121 if (call_vim_function(func, argc, argv, &rettv, safe) == FAIL) | 1104 if (call_vim_function(func, argc, argv, &rettv) == FAIL) |
1122 return NULL; | 1105 return NULL; |
1123 | 1106 |
1124 if (rettv.v_type != VAR_LIST) | 1107 if (rettv.v_type != VAR_LIST) |
1125 { | 1108 { |
1126 clear_tv(&rettv); | 1109 clear_tv(&rettv); |