Jacek Caban : jscript: Make Function instance object properties non-writable.
Module: wine Branch: master Commit: 7f01473a388529853f1552c15711bdf71c92daa0 URL: https://source.winehq.org/git/wine.git/?a=commit;h=7f01473a388529853f1552c15... Author: Jacek Caban <jacek(a)codeweavers.com> Date: Thu May 10 19:20:36 2018 +0200 jscript: Make Function instance object properties non-writable. Signed-off-by: Jacek Caban <jacek(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/jscript/function.c | 14 ++++---------- dlls/mshtml/tests/es5.js | 4 ++++ 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/dlls/jscript/function.c b/dlls/jscript/function.c index ac0640f..af0b9a4 100644 --- a/dlls/jscript/function.c +++ b/dlls/jscript/function.c @@ -358,12 +358,6 @@ static HRESULT Function_get_length(script_ctx_t *ctx, jsdisp_t *jsthis, jsval_t return S_OK; } -static HRESULT Function_set_length(script_ctx_t *ctx, jsdisp_t *jsthis, jsval_t value) -{ - FIXME("\n"); - return E_NOTIMPL; -} - static HRESULT Function_toString(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r) { @@ -588,9 +582,9 @@ static void Function_destructor(jsdisp_t *dispex) static const builtin_prop_t Function_props[] = { {applyW, Function_apply, PROPF_METHOD|2}, - {argumentsW, NULL, 0, Function_get_arguments, builtin_set_const}, + {argumentsW, NULL, 0, Function_get_arguments}, {callW, Function_call, PROPF_METHOD|1}, - {lengthW, NULL, 0, Function_get_length, Function_set_length}, + {lengthW, NULL, 0, Function_get_length}, {toStringW, Function_toString, PROPF_METHOD} }; @@ -604,8 +598,8 @@ static const builtin_info_t Function_info = { }; static const builtin_prop_t FunctionInst_props[] = { - {argumentsW, NULL, 0, Function_get_arguments, builtin_set_const}, - {lengthW, NULL, 0, Function_get_length, Function_set_length} + {argumentsW, NULL, 0, Function_get_arguments}, + {lengthW, NULL, 0, Function_get_length} }; static const builtin_info_t FunctionInst_info = { diff --git a/dlls/mshtml/tests/es5.js b/dlls/mshtml/tests/es5.js index 1096307..6b84b40 100644 --- a/dlls/mshtml/tests/es5.js +++ b/dlls/mshtml/tests/es5.js @@ -174,6 +174,10 @@ function test_getOwnPropertyDescriptor() { obj = new Array(); test_own_data_prop_desc(obj, "length", true, false, false); + obj = new Function(); + test_own_data_prop_desc(obj, "length", false, false, false); + test_own_data_prop_desc(obj, "arguments", false, false, false); + obj = /test/; test_own_data_prop_desc(obj, "lastIndex", true, false, false);
participants (1)
-
Alexandre Julliard