aboutsummaryrefslogtreecommitdiff
path: root/usr.bin/renice/renice.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.bin/renice/renice.c')
-rw-r--r--usr.bin/renice/renice.c31
1 files changed, 19 insertions, 12 deletions
diff --git a/usr.bin/renice/renice.c b/usr.bin/renice/renice.c
index 67917f96e1f8..fd442b425897 100644
--- a/usr.bin/renice/renice.c
+++ b/usr.bin/renice/renice.c
@@ -69,8 +69,9 @@ int
main(int argc, char *argv[])
{
struct passwd *pwd;
- int errs, incr, prio, which, who;
+ int delim, errs, incr, prio, which, who;
+ delim = 0;
errs = 0;
incr = 0;
which = PRIO_PROCESS;
@@ -88,17 +89,23 @@ main(int argc, char *argv[])
return (1);
argc--, argv++;
for (; argc > 0; argc--, argv++) {
- if (strcmp(*argv, "-g") == 0) {
- which = PRIO_PGRP;
- continue;
- }
- if (strcmp(*argv, "-u") == 0) {
- which = PRIO_USER;
- continue;
- }
- if (strcmp(*argv, "-p") == 0) {
- which = PRIO_PROCESS;
- continue;
+ if (!delim) {
+ if (strcmp(*argv, "-g") == 0) {
+ which = PRIO_PGRP;
+ continue;
+ }
+ if (strcmp(*argv, "-u") == 0) {
+ which = PRIO_USER;
+ continue;
+ }
+ if (strcmp(*argv, "-p") == 0) {
+ which = PRIO_PROCESS;
+ continue;
+ }
+ if (strcmp(*argv, "--") == 0) {
+ delim = 1;
+ continue;
+ }
}
if (which == PRIO_USER) {
if ((pwd = getpwnam(*argv)) != NULL)