Commit 4089e90
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- base/applications/cmdutils/taskkill
2 files changed
+335
-290
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
7 | 7 | | |
0 commit comments