Module: wine Branch: master Commit: 6e292a745f8b7305e0c747bb2a6c718aada47c7e URL: https://source.winehq.org/git/wine.git/?a=commit;h=6e292a745f8b7305e0c747bb2...
Author: Jacek Caban jacek@codeweavers.com Date: Thu Apr 22 01:46:51 2021 +0200
mshtml: Introduce ES6 JavaScript mode and use it in IE11 compat mode.
Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/jscript/jscript.h | 3 ++- dlls/mshtml/script.c | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/dlls/jscript/jscript.h b/dlls/jscript/jscript.h index 02420349d8d..94f8440362e 100644 --- a/dlls/jscript/jscript.h +++ b/dlls/jscript/jscript.h @@ -42,9 +42,10 @@ #define SCRIPTLANGUAGEVERSION_HTML 0x400
/* - * This is Wine jscript extension for ES5 compatible mode. Allowed only in HTML mode. + * This is Wine jscript extension for ES5 and ES6 compatible mode. Allowed only in HTML mode. */ #define SCRIPTLANGUAGEVERSION_ES5 0x102 +#define SCRIPTLANGUAGEVERSION_ES6 0x103
typedef struct _jsval_t jsval_t; typedef struct _jsstr_t jsstr_t; diff --git a/dlls/mshtml/script.c b/dlls/mshtml/script.c index ec739c4777f..8f7f502e121 100644 --- a/dlls/mshtml/script.c +++ b/dlls/mshtml/script.c @@ -66,6 +66,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(mshtml); /* See jscript.h in jscript.dll. */ #define SCRIPTLANGUAGEVERSION_HTML 0x400 #define SCRIPTLANGUAGEVERSION_ES5 0x102 +#define SCRIPTLANGUAGEVERSION_ES6 0x103
struct ScriptHost { IActiveScriptSite IActiveScriptSite_iface; @@ -154,7 +155,9 @@ static BOOL init_script_engine(ScriptHost *script_host) compat_mode = lock_document_mode(script_host->window->doc); script_mode = compat_mode < COMPAT_MODE_IE8 ? SCRIPTLANGUAGEVERSION_5_7 : SCRIPTLANGUAGEVERSION_5_8; if(IsEqualGUID(&script_host->guid, &CLSID_JScript)) { - if(compat_mode >= COMPAT_MODE_IE9) + if(compat_mode >= COMPAT_MODE_IE11) + script_mode = SCRIPTLANGUAGEVERSION_ES6; + else if(compat_mode >= COMPAT_MODE_IE9) script_mode = SCRIPTLANGUAGEVERSION_ES5; script_mode |= SCRIPTLANGUAGEVERSION_HTML; }