[PATCH 2/5] msi: Handle the remote case in MsiSummaryInfoSetProperty.
Signed-off-by: Dmitry Timoshkov <dmitry(a)baikal.ru> --- dlls/msi/suminfo.c | 20 ++++++++++++++++++++ dlls/msi/tests/custom.c | 4 +++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/dlls/msi/suminfo.c b/dlls/msi/suminfo.c index e796a692e4..8c844a6a6c 100644 --- a/dlls/msi/suminfo.c +++ b/dlls/msi/suminfo.c @@ -836,7 +836,17 @@ UINT WINAPI MsiSummaryInfoSetPropertyW( MSIHANDLE handle, UINT uiProperty, UINT return ERROR_INVALID_PARAMETER; if (!(si = msihandle2msiinfo( handle, MSIHANDLETYPE_SUMMARYINFO ))) + { + MSIHANDLE remote; + + if ((remote = msi_get_remote( handle ))) + { + WARN("MsiSummaryInfoSetProperty not allowed during a custom action!\n"); + return ERROR_FUNCTION_FAILED; + } + return ERROR_INVALID_HANDLE; + } str.unicode = TRUE; str.str.w = szValue; @@ -867,7 +877,17 @@ UINT WINAPI MsiSummaryInfoSetPropertyA( MSIHANDLE handle, UINT uiProperty, UINT return ERROR_INVALID_PARAMETER; if (!(si = msihandle2msiinfo( handle, MSIHANDLETYPE_SUMMARYINFO ))) + { + MSIHANDLE remote; + + if ((remote = msi_get_remote( handle ))) + { + WARN("MsiSummaryInfoSetProperty not allowed during a custom action!\n"); + return ERROR_FUNCTION_FAILED; + } + return ERROR_INVALID_HANDLE; + } str.unicode = FALSE; str.str.a = szValue; diff --git a/dlls/msi/tests/custom.c b/dlls/msi/tests/custom.c index 1cf24536d0..0ba5f10c88 100644 --- a/dlls/msi/tests/custom.c +++ b/dlls/msi/tests/custom.c @@ -499,7 +499,9 @@ todo_wine ok(hinst, !lstrcmpA(buffer, "deadbeef"), "got %s\n", buffer); r = MsiSummaryInfoSetPropertyA(suminfo, PID_CODEPAGE, VT_I2, 1252, &ft, ""); -todo_wine + ok(hinst, r == ERROR_FUNCTION_FAILED, "got %u\n", r); + + r = MsiSummaryInfoSetPropertyW(suminfo, PID_CODEPAGE, VT_I2, 1252, &ft, NULL); ok(hinst, r == ERROR_FUNCTION_FAILED, "got %u\n", r); r = MsiCloseHandle(suminfo); -- 2.17.1
Hi, While running your changed tests on Windows, I think I found new failures. Being a bot and all I'm not very good at pattern recognition, so I might be wrong, but could you please double-check? Full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=41712 Your paranoid android. === w7u (32 bit Windows report) === msi: action: Timeout === w7u (32 bit Windows report) === msi: install: Timeout === w7u (32 bit Windows report) === msi: msi: Timeout
participants (3)
-
Dmitry Timoshkov -
Hans Leidekker -
Marvin