mshtml: Added support for calling functions returned by builtin getters.
diff --git a/dlls/mshtml/dispex.c b/dlls/mshtml/dispex.c
index 39dfa64..bbe6098 100644
--- a/dlls/mshtml/dispex.c
+++ b/dlls/mshtml/dispex.c
@@ -849,7 +849,7 @@
     IUnknown *iface;
     HRESULT hres;
 
-    if(dp->cArgs) {
+    if(dp && dp->cArgs) {
         FIXME("cArgs %d\n", dp->cArgs);
         return E_NOTIMPL;
     }
@@ -961,7 +961,25 @@
         hres = builtin_propget(This, func, dp, res);
         break;
     default:
-        hres = typeinfo_invoke(This, func, flags, dp, res, ei);
+        if(!func->get_vtbl_off) {
+            hres = typeinfo_invoke(This, func, flags, dp, res, ei);
+        }else {
+            VARIANT v;
+
+            hres = builtin_propget(This, func, NULL, &v);
+            if(FAILED(hres))
+                return hres;
+
+            if(V_VT(&v) != VT_DISPATCH) {
+                FIXME("Not a function %s\n", debugstr_variant(&v));
+                VariantClear(&v);
+                return E_FAIL;
+            }
+
+            hres = invoke_disp_value(This, V_DISPATCH(&v), lcid, flags, dp, res, ei, caller);
+
+            IDispatch_Release(V_DISPATCH(&v));
+        }
     }
 
     return hres;