From: Gabriel Ivăncescu gabrielopcode@gmail.com
It is a prop, not a method.
Signed-off-by: Gabriel Ivăncescu gabrielopcode@gmail.com --- dlls/jscript/enumerator.c | 2 +- dlls/mshtml/tests/documentmode.js | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/dlls/jscript/enumerator.c b/dlls/jscript/enumerator.c index 203bfa8b8e0..c4aed168466 100644 --- a/dlls/jscript/enumerator.c +++ b/dlls/jscript/enumerator.c @@ -240,7 +240,7 @@ static HRESULT create_enumerator(script_ctx_t *ctx, jsval_t *argv, jsdisp_t **re /* Try to get a IEnumVARIANT by _NewEnum */ VariantInit(&varresult); hres = IDispatch_Invoke(obj, DISPID_NEWENUM, &IID_NULL, LOCALE_NEUTRAL, - DISPATCH_METHOD, &dispparams, &varresult, NULL, NULL); + DISPATCH_PROPERTYGET, &dispparams, &varresult, NULL, NULL); if (FAILED(hres)) { WARN("Enumerator: no DISPID_NEWENUM.\n"); diff --git a/dlls/mshtml/tests/documentmode.js b/dlls/mshtml/tests/documentmode.js index 20188f459dd..13dd172fec1 100644 --- a/dlls/mshtml/tests/documentmode.js +++ b/dlls/mshtml/tests/documentmode.js @@ -452,6 +452,13 @@ sync_test("builtin_obj", function() { e = ex.number; } ok(e === 0xa01b6 - 0x80000000, "[f.apply() indirect] e = " + e); + + var enumerator = new Enumerator(document.getElementsByTagName("br")); + enumerator.moveNext(); + var enum_elem = enumerator.item(); + ok(enum_elem === elem2, "enum_elem = " + enum_elem); + enumerator.moveNext(); + ok(enumerator.atEnd(), "enumerator not at end"); } });