[3/4] shdocvw: Add and use AdviseSinkInerface for IE

Jacek Caban jacek at codeweavers.com
Tue Jul 27 06:42:42 CDT 2010

  On 7/27/10 1:25 PM, Alexander Nicolaysen Sørnes wrote:
> This will be used to change the address bar URL when navigating to new pages

+    *ppvoid = NULL;
+    if(IsEqualGUID(&IID_IAdviseSink, riid))

You also need to handle IUnknown.

+    {
+        *ppvoid = iface;
+        AdviseSink_AddRef(iface);

Direct call to interface function is not really nice.

+typedef struct _AdviseSink {
+    const IAdviseSinkVtbl         *lpAdviseSinkVtbl;
+    LONG ref;
+    DocHost* doc_host;
+} AdviseSink;

Is there any reason to make it a separated struct?

Also, you don't need it for URL change notification. We already have better way of doing that in shdocvw. See IPropertyNotifySink related code.


More information about the wine-devel mailing list