Module: wine Branch: master Commit: 00327065649b6de9936b96b65d2d94842baaa86f URL: http://source.winehq.org/git/wine.git/?a=commit;h=00327065649b6de9936b96b65d...
Author: Hans Leidekker hans@codeweavers.com Date: Thu Sep 2 13:20:23 2010 +0200
msi: Add stub implementations of MsiBeginTransaction and MsiEndTransaction.
---
dlls/msi/msi.c | 41 +++++++++++++++++++++++++++++++++++++++++ dlls/msi/msi.spec | 6 +++--- include/msi.h | 6 ++++++ 3 files changed, 50 insertions(+), 3 deletions(-)
diff --git a/dlls/msi/msi.c b/dlls/msi/msi.c index fb7eba5..7d1b9a5 100644 --- a/dlls/msi/msi.c +++ b/dlls/msi/msi.c @@ -3779,3 +3779,44 @@ UINT WINAPI MsiInstallMissingComponentW(LPCWSTR szProduct, LPCWSTR szComponent, FIXME("(%s %s %d\n", debugstr_w(szProduct), debugstr_w(szComponent), eInstallState); return ERROR_SUCCESS; } + +/*********************************************************************** + * MsiBeginTransactionA [MSI.@] + */ +UINT WINAPI MsiBeginTransactionA( LPCSTR name, DWORD attrs, MSIHANDLE *id, HANDLE *event ) +{ + WCHAR *nameW; + UINT r; + + FIXME("%s %u %p %p\n", debugstr_a(name), attrs, id, event); + + nameW = strdupAtoW( name ); + if (name && !nameW) + return ERROR_OUTOFMEMORY; + + r = MsiBeginTransactionW( nameW, attrs, id, event ); + msi_free( nameW ); + return r; +} + +/*********************************************************************** + * MsiBeginTransactionW [MSI.@] + */ +UINT WINAPI MsiBeginTransactionW( LPCWSTR name, DWORD attrs, MSIHANDLE *id, HANDLE *event ) +{ + FIXME("%s %u %p %p\n", debugstr_w(name), attrs, id, event); + + *id = (MSIHANDLE)0xdeadbeef; + *event = (HANDLE)0xdeadbeef; + + return ERROR_SUCCESS; +} + +/*********************************************************************** + * MsiEndTransaction [MSI.@] + */ +UINT WINAPI MsiEndTransaction( DWORD state ) +{ + FIXME("%u\n", state); + return ERROR_SUCCESS; +} diff --git a/dlls/msi/msi.spec b/dlls/msi/msi.spec index 6fdebd8..f0e3238 100644 --- a/dlls/msi/msi.spec +++ b/dlls/msi/msi.spec @@ -277,9 +277,9 @@ 281 stdcall MsiSetExternalUIRecord(ptr long ptr ptr) 282 stub MsiGetPatchFileListA 283 stub MsiGetPatchFileListW -284 stub MsiBeginTransactionA -285 stub MsiBeginTransactionW -286 stub MsiEndTransaction +284 stdcall MsiBeginTransactionA(str long ptr ptr) +285 stdcall MsiBeginTransactionW(wstr long ptr ptr) +286 stdcall MsiEndTransaction(long) 287 stub MsiJoinTransaction 288 stub MsiSetOfflineContextW 289 stub MsiEnumComponentsExA diff --git a/include/msi.h b/include/msi.h index b331057..164cd26 100644 --- a/include/msi.h +++ b/include/msi.h @@ -663,6 +663,12 @@ UINT WINAPI MsiApplyMultiplePatchesA(LPCSTR, LPCSTR, LPCSTR); UINT WINAPI MsiApplyMultiplePatchesW(LPCWSTR, LPCWSTR, LPCWSTR); #define MsiApplyMultiplePatches WINELIB_NAME_AW(MsiApplyMultiplePatches)
+UINT WINAPI MsiBeginTransactionA(LPCSTR, DWORD, MSIHANDLE *, HANDLE *); +UINT WINAPI MsiBeginTransactionW(LPCWSTR, DWORD, MSIHANDLE *, HANDLE *); +#define MsiBeginTransaction WINELIB_NAME_AW(MsiBeginTransaction) + +UINT WINAPI MsiEndTransaction(DWORD); + /* Non Unicode */ UINT WINAPI MsiCloseHandle(MSIHANDLE); UINT WINAPI MsiCloseAllHandles(void);