diff --git a/dlls/mshtml/htmldoc.c b/dlls/mshtml/htmldoc.c
index 1e97d46c076..732fd5290f6 100644
--- a/dlls/mshtml/htmldoc.c
+++ b/dlls/mshtml/htmldoc.c
@@ -1795,6 +1795,7 @@ static void init_doc(HTMLDocument *doc, IUnknown *unk_impl, IDispatchEx *dispex)
HTMLDocument_Hlink_Init(doc);
ConnectionPointContainer_Init(&doc->cp_container, (IUnknown*)HTMLDOC(doc));
+ ConnectionPoint_Init(&doc->cp_dispatch, &doc->cp_container, &IID_IDispatch, NULL);
ConnectionPoint_Init(&doc->cp_propnotif, &doc->cp_container, &IID_IPropertyNotifySink, NULL);
ConnectionPoint_Init(&doc->cp_htmldocevents, &doc->cp_container, &DIID_HTMLDocumentEvents, &HTMLDocumentEvents_data);
ConnectionPoint_Init(&doc->cp_htmldocevents2, &doc->cp_container, &DIID_HTMLDocumentEvents2, NULL);
diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h
index 2ef7611bf6d..fcdb916d5f2 100644
--- a/dlls/mshtml/mshtml_private.h
+++ b/dlls/mshtml/mshtml_private.h
@@ -340,6 +340,7 @@ struct HTMLDocument {
ConnectionPoint cp_htmldocevents;
ConnectionPoint cp_htmldocevents2;
ConnectionPoint cp_propnotif;
+ ConnectionPoint cp_dispatch;
IOleAdviseHolder *advise_holder;
};
diff --git a/dlls/mshtml/tests/htmldoc.c b/dlls/mshtml/tests/htmldoc.c
index d74bf967446..166602091bf 100644
--- a/dlls/mshtml/tests/htmldoc.c
+++ b/dlls/mshtml/tests/htmldoc.c
@@ -2953,6 +2953,7 @@ static void test_ConnectionPointContainer(IUnknown *unk)
if(FAILED(hres))
return;
+ test_ConnectionPoint(container, &IID_IDispatch);
test_ConnectionPoint(container, &IID_IPropertyNotifySink);
test_ConnectionPoint(container, &DIID_HTMLDocumentEvents);
test_ConnectionPoint(container, &DIID_HTMLDocumentEvents2);