Jacek Caban : jscript: Make Function instance object properties non-writable.
Alexandre Julliard
julliard at winehq.org
Thu May 10 18:23:16 CDT 2018
Module: wine
Branch: master
Commit: 7f01473a388529853f1552c15711bdf71c92daa0
URL: https://source.winehq.org/git/wine.git/?a=commit;h=7f01473a388529853f1552c15711bdf71c92daa0
Author: Jacek Caban <jacek at 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 at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at 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);
More information about the wine-cvs
mailing list