Gabriel Ivăncescu (@insn) commented about dlls/mshtml/mutation.c:
return E_INVALIDARG;
- callback = params->rgvarg + (params->cArgs - 1);
- if (V_VT(callback) != VT_DISPATCH)
return E_INVALIDARG;
- hres = create_mutation_observer(dispex_compat_mode(&This->dispex), V_DISPATCH(callback),
&mutation_observer);
- if (FAILED(hres))
return hres;
- V_VT(res) = VT_DISPATCH;
- V_DISPATCH(res) = (IDispatch*)mutation_observer;
- return S_OK;
+}
Please add some basic tests for the constructor, I suggested some earlier, but now since you can instantiate the object, I suggest some like:
* What happens if you construct with more than 1 arg? Probably it ignores further args rather than giving error. * What happens if you pass a null to callback? Or a number, for example? Does it give error or simply ignores it? * I think you should ignore named args, the rest of the code doesn't really deal with them, and you only have one arg to care about anyway.