summaryrefslogtreecommitdiffstats
path: root/Process.c
diff options
context:
space:
mode:
authorNathan Scott <nathans@redhat.com>2020-08-20 09:35:24 +1000
committerNathan Scott <nathans@redhat.com>2020-08-20 09:35:33 +1000
commit500fb283e9b86a6580cedbf834aea9d7dd639a66 (patch)
tree52c0df7aa5178887f14e48fc40c1dc45a8530dfc /Process.c
parent5228f5d47a10d9194297a31bf4cf7dbbade6c868 (diff)
Resolve compiler warnings and errors relating to the Arg union
Promote the Arg union to a core data type in Object.c such that it is visible everywhere (many source files need it), and correct declarations of several functions that use it. The Process_sendSignal function is also corrected to have the expected return type (bool, not void) - an error being masked by ignoring this not-quite-harmless warning. I've also added error checking to the kill(2) call here, which was previously overlooked / missing (?).
Diffstat (limited to 'Process.c')
-rw-r--r--Process.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/Process.c b/Process.c
index 199263e2..391fbb3e 100644
--- a/Process.c
+++ b/Process.c
@@ -1,6 +1,7 @@
/*
htop - Process.c
(C) 2004-2015 Hisham H. Muhammad
+(C) 2020 Red Hat, Inc. All Rights Reserved.
Released under the GNU GPL, see the COPYING file
in the source distribution for its full text.
*/
@@ -561,14 +562,15 @@ bool Process_setPriority(Process* this, int priority) {
return (err == 0);
}
-bool Process_changePriorityBy(Process* this, int delta) {
- return Process_setPriority(this, this->nice + delta);
+bool Process_changePriorityBy(Process* this, Arg delta) {
+ return Process_setPriority(this, this->nice + delta.i);
}
-void Process_sendSignal(Process* this, int sgn) {
+bool Process_sendSignal(Process* this, Arg sgn) {
CRT_dropPrivileges();
- kill(this->pid, (int) sgn);
+ bool ok = (kill(this->pid, sgn.i) == 0);
CRT_restorePrivileges();
+ return ok;
}
long Process_pidCompare(const void* v1, const void* v2) {

© 2014-2024 Faster IT GmbH | imprint | privacy policy