Skip to content

Commit 4089e90

Browse files
committed
[TASKKILL] Final sync with wine-10.0 (reactos#7855)
[WINESYNC] taskkill: Build with msvcrt. Signed-off-by: Alexandre Julliard <[email protected]> wine commit id fb80c1b554eaf07bf2f89fcf2960e39bd0d4787a by Alexandre Julliard <[email protected]> [WINESYNC] taskkill: Use wide-char string literals. Signed-off-by: Michael Stefaniuc <[email protected]> Signed-off-by: Alexandre Julliard <[email protected]> wine commit id 3180972ee2c8e67c425aa7f5279d0cd830455c3d by Michael Stefaniuc <[email protected]> [WINESYNC] taskkill: Use the standard va_list instead of __ms_va_list. Signed-off-by: Alexandre Julliard <[email protected]> wine commit id 2c2e75503bea973a3091ea48d431782da656ef8e by Alexandre Julliard <[email protected]> [WINESYNC] taskkill: Use OEM code page for output. Signed-off-by: Eric Pouech <[email protected]> Signed-off-by: Alexandre Julliard <[email protected]> wine commit id 8fdf397505522cc8e41b58cd960899ef7cdf322b by Eric Pouech <[email protected]> [WINESYNC] taskkill: Use exit code 1 when terminating processes. wine commit id fe6294c74346e9956fb839d2a4ca078c624f6bbf by Brendan Shanks <[email protected]> [WINESYNC] taskkill: Use CRT allocation functions. wine commit id dd3f3f381f9e761325c7c06236de1241c9605ed6 by Paul Gofman <[email protected]> [WINESYNC] taskkill: Remove unneeded free() before process exit. wine commit id 20ab5f06d0972440a7df7fb1ba390ab1b32f3b1d by Paul Gofman <[email protected]> [WINESYNC] taskkill: Enumerate processes in main(). wine commit id cf4a0b7392f33ba3e0b3fe69007a6d1f327f13f2 by Paul Gofman <[email protected]> [WINESYNC] taskkill: Factor out get_task_pid(). wine commit id 62ef3c5be1d2c5374399984588a9daa75663d030 by Paul Gofman <[email protected]> [WINESYNC] taskkill: Use toolhelp snapshot to get process information. wine commit id 6cca1f5099a8354b67578b42dd34fd010e80b6de by Paul Gofman <[email protected]> [WINESYNC] taskkill: Mark processes for termination in main(). wine commit id 5c851451892e05c1747108432a5a2bff3a78ed9e by Paul Gofman <[email protected]> [WINESYNC] taskkill: Support terminating child processes. wine commit id fb6b1c91bbf412f5eba260ae52ee38176fd693d4 by Paul Gofman <[email protected]> NOTE: This implementation is disabled for ReactOS, and we keep our own. See the comment block in the code for the reasons why. + Adaptations for ReactOS-specific code. In particular, great care has been taken to keep the `pkill_list` functionality (read: fix) introduced in PR reactos#2403 (commit 97e7efc). The current problem with Wine's code is that if many processes (more than one) with the same image name are running, then: taskkill /im theimagename.exe would only terminate *one* of the corresponding processes, instead of all processes having this same image name (as on Windows). The `pkill_list` array contains all the PIDs of these processes. This replaces the single `pid` initialized by `get_task_pid`. Co-authored-by: Hermès Bélusca-Maïto <[email protected]>
1 parent f669426 commit 4089e90

File tree

2 files changed

+335
-290
lines changed

2 files changed

+335
-290
lines changed

base/applications/cmdutils/taskkill/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22
add_executable(taskkill taskkill.c taskkill.rc)
33
target_link_libraries(taskkill wine)
44
set_module_type(taskkill win32cui UNICODE)
5-
add_importlibs(taskkill psapi user32 msvcrt kernel32 ntdll)
5+
add_importlibs(taskkill user32 msvcrt kernel32 ntdll)
66
add_cd_file(TARGET taskkill DESTINATION reactos/system32 FOR all)
77
set_wine_module_FIXME(taskkill) # CORE-5743: No ARRAY_SIZE macro

0 commit comments

Comments
 (0)