Module: wine Branch: master Commit: dd678df78911124791fa6fcad9e6a2aeedaeed36 URL: https://source.winehq.org/git/wine.git/?a=commit;h=dd678df78911124791fa6fcad...
Author: Jeff Smith whydoubt@gmail.com Date: Mon Mar 16 23:36:37 2020 -0500
jscript: Set return object's class to 'object' in Object.create.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48762 Signed-off-by: Jeff Smith whydoubt@gmail.com Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/jscript/object.c | 2 +- dlls/mshtml/tests/es5.js | 9 ++++++++- 2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/dlls/jscript/object.c b/dlls/jscript/object.c index 3cac277775..268cfaa1c3 100644 --- a/dlls/jscript/object.c +++ b/dlls/jscript/object.c @@ -612,7 +612,7 @@ static HRESULT Object_create(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, return E_INVALIDARG; }
- hres = create_dispex(ctx, NULL, proto, &obj); + hres = create_dispex(ctx, &ObjectInst_info, proto, &obj); if(FAILED(hres)) return hres;
diff --git a/dlls/mshtml/tests/es5.js b/dlls/mshtml/tests/es5.js index 7a5b9d57ea..6b5d04a959 100644 --- a/dlls/mshtml/tests/es5.js +++ b/dlls/mshtml/tests/es5.js @@ -768,7 +768,7 @@ function test_getPrototypeOf() { }
function test_toString() { - var tmp; + var tmp, obj;
(function () { tmp = Object.prototype.toString.call(arguments); })(); todo_wine. @@ -786,6 +786,13 @@ function test_toString() { todo_wine. ok(tmp === "[object Undefined]", "toString.call() = " + tmp);
+ obj = Object.create(null); + tmp = Object.prototype.toString.call(obj); + ok(tmp === "[object Object]", "toString.call(Object.create(null)) = " + tmp); + obj = Object.create(Number.prototype); + tmp = Object.prototype.toString.call(obj); + ok(tmp === "[object Object]", "toString.call(Object.create(Number.prototype)) = " + tmp); + next_test(); }