summaryrefslogtreecommitdiffstats
path: root/osdep-openbsd.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicholas.marriott@gmail.com>2009-02-07 19:24:50 +0000
committerNicholas Marriott <nicholas.marriott@gmail.com>2009-02-07 19:24:50 +0000
commitf53bcc87980c4a7dc85e62673c46ce67bb01de47 (patch)
treed6745d0f774c1d9fe65fa0804302e69288173437 /osdep-openbsd.c
parent1d3fba86a3561c93cfbb42137c89fa85c65b0f2b (diff)
Even better.
Diffstat (limited to 'osdep-openbsd.c')
-rw-r--r--osdep-openbsd.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/osdep-openbsd.c b/osdep-openbsd.c
index 8cbf6f3d..c4a52d23 100644
--- a/osdep-openbsd.c
+++ b/osdep-openbsd.c
@@ -1,4 +1,4 @@
-/* $Id: osdep-openbsd.c,v 1.8 2009-02-07 19:16:25 nicm Exp $ */
+/* $Id: osdep-openbsd.c,v 1.9 2009-02-07 19:24:50 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -85,16 +85,15 @@ retry:
bestp = p;
if (!is_stopped(p) && is_stopped(bestp))
bestp = p;
-
- if (p->p_estcpu < bestp->p_estcpu)
- continue;
- if (p->p_slptime > bestp->p_slptime)
- continue;
- if (!(p->p_flag & P_SINTR) && bestp->p_flag & P_SINTR)
- continue;
- if (LIST_FIRST(&p->p_children) != NULL)
- continue;
- bestp = p;
+ if (p->p_estcpu > bestp->p_estcpu)
+ bestp = p;
+ if (p->p_slptime < bestp->p_slptime)
+ bestp = p;
+ if (p->p_flag & P_SINTR && !(bestp->p_flag & P_SINTR))
+ bestp = p;
+ if (LIST_FIRST(&p->p_children) == NULL &&
+ LIST_FIRST(&bestp->p_children) != NULL)
+ bestp = p;
}
if (bestp != NULL) {
procname = get_proc_argv0(bestp->p_pid);