From 97aaaaa6639812006189e6610344bb6d9d459c94 Mon Sep 17 00:00:00 2001 From: Sebastian Lackner Date: Fri, 27 Mar 2015 07:00:49 +0100 Subject: [PATCH] Added patch with stubs for Power[Set|Clear]Request. --- README.md | 5 ++ debian/changelog | 1 + ...dd-stubs-for-Power-Set-Clear-Request.patch | 77 +++++++++++++++++++ patches/kernel32-PowerRequest/definition | 1 + patches/patchinstall.sh | 4 +- 5 files changed, 87 insertions(+), 1 deletion(-) create mode 100644 patches/kernel32-PowerRequest/0002-kernel32-Add-stubs-for-Power-Set-Clear-Request.patch diff --git a/README.md b/README.md index b3087c9a..5c99b380 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,11 @@ Wine. All those differences are also documented on the Included bug fixes and improvements =================================== +**Bugfixes and features included in the next upcoming release [1]:** + +* Add stubs for Power[Set|Clear]Request + + **Bugs fixed in Wine Staging 1.7.39 [205]:** * Add Dynamic DST exceptions for Israel Standard Time ([Wine Bug #36374](https://bugs.winehq.org/show_bug.cgi?id=36374)) diff --git a/debian/changelog b/debian/changelog index 6ccd60c4..f11bbf4f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,5 +1,6 @@ wine-staging (1.7.40) UNRELEASED; urgency=low * Update dsound fast mixer patchset to use integer math. + * Added patch with stubs for Power[Set|Clear]Request. * Removed patch to fix regression causing black screen on startup (accepted upstream). * Removed patch to fix edge cases in TOOLTIPS_GetTipText (fixed upstream). * Removed patch for IConnectionPoint/INetworkListManagerEvents stub interface (accepted upstream). diff --git a/patches/kernel32-PowerRequest/0002-kernel32-Add-stubs-for-Power-Set-Clear-Request.patch b/patches/kernel32-PowerRequest/0002-kernel32-Add-stubs-for-Power-Set-Clear-Request.patch new file mode 100644 index 00000000..67aee251 --- /dev/null +++ b/patches/kernel32-PowerRequest/0002-kernel32-Add-stubs-for-Power-Set-Clear-Request.patch @@ -0,0 +1,77 @@ +From cebca02c89236793ddfbab05adf8dd557b9c6ae4 Mon Sep 17 00:00:00 2001 +From: Sebastian Lackner +Date: Fri, 27 Mar 2015 06:59:11 +0100 +Subject: kernel32: Add stubs for Power{Set,Clear}Request. + +--- + dlls/kernel32/kernel32.spec | 4 ++-- + dlls/kernel32/powermgnt.c | 22 ++++++++++++++++++++++ + include/winbase.h | 6 ++++++ + 3 files changed, 30 insertions(+), 2 deletions(-) + +diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec +index fd1d625..0b90e3c 100644 +--- a/dlls/kernel32/kernel32.spec ++++ b/dlls/kernel32/kernel32.spec +@@ -1134,9 +1134,9 @@ + @ stdcall PeekConsoleInputW(ptr ptr long ptr) + @ stdcall PeekNamedPipe(long ptr long ptr ptr ptr) + @ stdcall PostQueuedCompletionStatus(long long ptr ptr) +-# @ stub PowerClearRequest ++@ stdcall PowerClearRequest(ptr long) + @ stdcall PowerCreateRequest(ptr) +-# @ stub PowerSetRequest ++@ stdcall PowerSetRequest(ptr long) + @ stdcall PrepareTape(ptr long long) + @ stub PrivCopyFileExW + @ stub PrivMoveFileIdentityW +diff --git a/dlls/kernel32/powermgnt.c b/dlls/kernel32/powermgnt.c +index 74ec397..b5bd0d9 100644 +--- a/dlls/kernel32/powermgnt.c ++++ b/dlls/kernel32/powermgnt.c +@@ -111,3 +111,25 @@ HANDLE WINAPI PowerCreateRequest(REASON_CONTEXT *context) + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return INVALID_HANDLE_VALUE; + } ++ ++/*********************************************************************** ++ * PowerSetRequest (KERNEL32.@) ++ */ ++BOOL WINAPI PowerSetRequest(HANDLE request, POWER_REQUEST_TYPE type) ++{ ++ FIXME("(%p, %u): stub\n", request, type); ++ ++ SetLastError(ERROR_CALL_NOT_IMPLEMENTED); ++ return FALSE; ++} ++ ++/*********************************************************************** ++ * PowerClearRequest (KERNEL32.@) ++ */ ++BOOL WINAPI PowerClearRequest(HANDLE request, POWER_REQUEST_TYPE type) ++{ ++ FIXME("(%p, %u): stub\n", request, type); ++ ++ SetLastError(ERROR_CALL_NOT_IMPLEMENTED); ++ return FALSE; ++} +diff --git a/include/winbase.h b/include/winbase.h +index 58ed07c..6683312 100644 +--- a/include/winbase.h ++++ b/include/winbase.h +@@ -865,6 +865,12 @@ typedef struct _SYSTEM_POWER_STATUS + DWORD BatteryFullLifeTime; + } SYSTEM_POWER_STATUS, *LPSYSTEM_POWER_STATUS; + ++typedef enum _POWER_REQUEST_TYPE ++{ ++ PowerRequestDisplayRequired, ++ PowerRequestSystemRequired, ++ PowerRequestAwayModeRequired ++} POWER_REQUEST_TYPE, *PPOWER_REQUEST_TYPE; + + typedef struct _SYSTEM_INFO + { +-- +2.3.3 + diff --git a/patches/kernel32-PowerRequest/definition b/patches/kernel32-PowerRequest/definition index fa1315bb..37a0a0dd 100644 --- a/patches/kernel32-PowerRequest/definition +++ b/patches/kernel32-PowerRequest/definition @@ -1 +1,2 @@ Fixes: Add stub for PowerCreateRequest +Fixes: Add stubs for Power[Set|Clear]Request diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index 1f0623ed..1bd15f35 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -2673,12 +2673,14 @@ fi # Patchset kernel32-PowerRequest # | # | Modified files: -# | * dlls/kernel32/kernel32.spec, dlls/kernel32/powermgnt.c +# | * dlls/kernel32/kernel32.spec, dlls/kernel32/powermgnt.c, include/winbase.h # | if test "$enable_kernel32_PowerRequest" -eq 1; then patch_apply kernel32-PowerRequest/0001-kernel32-Add-stub-for-PowerCreateRequest.patch + patch_apply kernel32-PowerRequest/0002-kernel32-Add-stubs-for-Power-Set-Clear-Request.patch ( echo '+ { "Sebastian Lackner", "kernel32: Add stub for PowerCreateRequest.", 1 },'; + echo '+ { "Sebastian Lackner", "kernel32: Add stubs for Power{Set,Clear}Request.", 1 },'; ) >> "$patchlist" fi