[5/6] xolehlp: implement ITransactionImportWhereabouts

Daniel Jeliński djelinski1 at gmail.com
Wed May 1 16:20:46 CDT 2013


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20130501/6423f305/attachment-0001.html>
-------------- next part --------------
From 22b9cec09431cef24120c6e8889d6291aedd8054 Mon Sep 17 00:00:00 2001
From: Daniel Jelinski <djelinski1 at gmail.com>
Date: Wed, 1 May 2013 21:38:22 +0200
Subject: xolehlp: implement ITransactionImportWhereabouts

---
 dlls/xolehlp/xolehlp.c |   51 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 51 insertions(+), 0 deletions(-)

diff --git a/dlls/xolehlp/xolehlp.c b/dlls/xolehlp/xolehlp.c
index b172196..a264ca6 100644
--- a/dlls/xolehlp/xolehlp.c
+++ b/dlls/xolehlp/xolehlp.c
@@ -32,6 +32,7 @@ typedef struct {
     ITransactionDispenser ITransactionDispenser_iface;
     LONG ref;
     IResourceManagerFactory IResourceManagerFactory_iface;
+    ITransactionImportWhereabouts ITransactionImportWhereabouts_iface;
 } TransactionManager;
 
 static inline TransactionManager *impl_from_ITransactionDispenser(ITransactionDispenser *iface)
@@ -56,6 +57,10 @@ static HRESULT WINAPI TransactionDispenser_QueryInterface(ITransactionDispenser
     {
         *ppv = &This->IResourceManagerFactory_iface;
     }
+    else if (IsEqualIID(&IID_ITransactionImportWhereabouts, iid))
+    {
+        *ppv = &This->ITransactionImportWhereabouts_iface;
+    }
     else
     {
         FIXME("(%s): not implemented\n", debugstr_guid(iid));
@@ -161,6 +166,51 @@ static const IResourceManagerFactoryVtbl ResourceManagerFactory_Vtbl = {
     ResourceManagerFactory_Create
 };
 
+static inline TransactionManager *impl_from_ITransactionImportWhereabouts(ITransactionImportWhereabouts *iface)
+{
+    return CONTAINING_RECORD(iface, TransactionManager, ITransactionImportWhereabouts_iface);
+}
+
+static HRESULT WINAPI TransactionImportWhereabouts_QueryInterface(ITransactionImportWhereabouts *iface, REFIID iid,
+    void **ppv)
+{
+    TransactionManager *This = impl_from_ITransactionImportWhereabouts(iface);
+    return TransactionDispenser_QueryInterface(&This->ITransactionDispenser_iface, iid, ppv);
+}
+
+static ULONG WINAPI TransactionImportWhereabouts_AddRef(ITransactionImportWhereabouts *iface)
+{
+    TransactionManager *This = impl_from_ITransactionImportWhereabouts(iface);
+    return TransactionDispenser_AddRef(&This->ITransactionDispenser_iface);
+}
+
+static ULONG WINAPI TransactionImportWhereabouts_Release(ITransactionImportWhereabouts *iface)
+{
+    TransactionManager *This = impl_from_ITransactionImportWhereabouts(iface);
+    return TransactionDispenser_Release(&This->ITransactionDispenser_iface);
+}
+static HRESULT WINAPI TransactionImportWhereabouts_GetWhereaboutsSize(ITransactionImportWhereabouts *iface,
+	ULONG *pcbWhereabouts)
+{
+    FIXME("(%p, %p): stub\n", iface, pcbWhereabouts);
+
+    return E_NOTIMPL;
+}
+static HRESULT WINAPI TransactionImportWhereabouts_GetWhereabouts(ITransactionImportWhereabouts *iface,
+	ULONG cbWhereabouts, BYTE *rgbWhereabouts,ULONG *pcbUsed)
+{
+    FIXME("(%p, %u, %p, %p): stub\n", iface, cbWhereabouts, rgbWhereabouts, pcbUsed);
+
+    return E_NOTIMPL;
+}
+static const ITransactionImportWhereaboutsVtbl TransactionImportWhereabouts_Vtbl = {
+    TransactionImportWhereabouts_QueryInterface,
+    TransactionImportWhereabouts_AddRef,
+    TransactionImportWhereabouts_Release,
+    TransactionImportWhereabouts_GetWhereaboutsSize,
+    TransactionImportWhereabouts_GetWhereabouts
+};
+
 static HRESULT TransactionManager_Create(REFIID riid, void **ppv)
 {
     TransactionManager *This;
@@ -171,6 +221,7 @@ static HRESULT TransactionManager_Create(REFIID riid, void **ppv)
 
     This->ITransactionDispenser_iface.lpVtbl = &TransactionDispenser_Vtbl;
     This->IResourceManagerFactory_iface.lpVtbl = &ResourceManagerFactory_Vtbl;
+    This->ITransactionImportWhereabouts_iface.lpVtbl = &TransactionImportWhereabouts_Vtbl;
     This->ref = 1;
 
     ret = ITransactionDispenser_QueryInterface(&This->ITransactionDispenser_iface, riid, ppv);
-- 
1.7.5.4


More information about the wine-patches mailing list