[PATCH 0/1] MR3567: jscript: handle Array.prototype.splice with omitted deleteCount
Current code handles omitted deleteCount but assumes it to be zero in that case. Instead an omitted deleteCount means delete everything from `start`. This prevents Adobe sign-in page from loading. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/3567
From: Yuxuan Shui <yshui(a)codeweavers.com> --- dlls/jscript/array.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dlls/jscript/array.c b/dlls/jscript/array.c index 4e1af864a8e..58d7a174a64 100644 --- a/dlls/jscript/array.c +++ b/dlls/jscript/array.c @@ -870,6 +870,8 @@ static HRESULT Array_splice(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsign } add_args = argc-2; + } else if (argc) { + delete_cnt = length-start; } if(r) { -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/3567
Hi, It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated. The tests also ran into some preexisting test failures. If you know how to fix them that would be helpful. See the TestBot job for the details: The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=136131 Your paranoid android. === debian11 (32 bit report) === jscript: run.c:1232: Test failed: api.js: L"arr.splice(2,-1) returned 3,4,5" run.c:1232: Test failed: api.js: L"arr.splice(2,-1) is 1,2" run.c:1232: Test failed: api.js: L"arr.splice(-bigInt) returned 1,2,3,4,5" run.c:1232: Test failed: api.js: L"arr.splice(-bigInt) is " run.c:1232: Test failed: api.js: L"arr.splice(2,-1) returned 3,4,5" run.c:1232: Test failed: api.js: L"arr.splice(2,-1) is 1,2" run.c:1232: Test failed: api.js: L"arr.splice(-bigInt) returned 1,2,3,4,5" run.c:1232: Test failed: api.js: L"arr.splice(-bigInt) is " === debian11b (64 bit WoW report) === jscript: run.c:1232: Test failed: api.js: L"arr.splice(2,-1) returned 3,4,5" run.c:1232: Test failed: api.js: L"arr.splice(2,-1) is 1,2" run.c:1232: Test failed: api.js: L"arr.splice(-bigInt) returned 1,2,3,4,5" run.c:1232: Test failed: api.js: L"arr.splice(-bigInt) is " run.c:1232: Test failed: api.js: L"arr.splice(2,-1) returned 3,4,5" run.c:1232: Test failed: api.js: L"arr.splice(2,-1) is 1,2" run.c:1232: Test failed: api.js: L"arr.splice(-bigInt) returned 1,2,3,4,5" run.c:1232: Test failed: api.js: L"arr.splice(-bigInt) is "
hmm, this is going to break jscript tests isn't it? is this a case where IE11 behaves differently from jscript? -- https://gitlab.winehq.org/wine/wine/-/merge_requests/3567#note_42204
On Mon Aug 14 18:25:21 2023 +0000, Yuxuan Shui wrote:
hmm, this is going to break jscript tests isn't it? is this a case where IE11 behaves differently from jscript? Seems so.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/3567#note_42205
participants (3)
-
Marvin -
Yuxuan Shui -
Yuxuan Shui (@yshui)