diff --git a/dlls/jscript/global.c b/dlls/jscript/global.c index 81aee508752..0d922c8f009 100644 --- a/dlls/jscript/global.c +++ b/dlls/jscript/global.c @@ -706,8 +706,22 @@ static HRESULT JSGlobal_GetObject(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags static HRESULT JSGlobal_ScriptEngine(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISPPARAMS *dp, VARIANT *retv, jsexcept_t *ei, IServiceProvider *sp) { - FIXME("\n"); - return E_NOTIMPL; + static const WCHAR JScriptW[] = {'J','S','c','r','i','p','t',0}; + + TRACE("\n"); + + if(retv) { + BSTR ret; + + ret = SysAllocString(JScriptW); + if(!ret) + return E_OUTOFMEMORY; + + V_VT(retv) = VT_BSTR; + V_BSTR(retv) = ret; + } + + return S_OK; } static HRESULT JSGlobal_ScriptEngineMajorVersion(script_ctx_t *ctx, vdisp_t *jsthis, WORD flags, DISPPARAMS *dp, diff --git a/dlls/jscript/tests/api.js b/dlls/jscript/tests/api.js index ba5235db8f9..aed6c846e70 100644 --- a/dlls/jscript/tests/api.js +++ b/dlls/jscript/tests/api.js @@ -18,6 +18,9 @@ var tmp, i; +ok(ScriptEngine() === "JScript", "ScriptEngine() = " + ScriptEngine()); +ok(ScriptEngine(3) === "JScript", "ScriptEngine(3) = " + ScriptEngine(3)); + i = parseInt("0"); ok(i === 0, "parseInt('0') = " + i); i = parseInt("123");