Explorer09
6dae8108f8
Introduce CLAMP macro. Unify all MIN(MAX(a,b),c) uses.
...
With the CLAMP macro replacing the combination of MIN and MAX, we will
have at least two advantages:
1. It's more obvious semantically.
2. There are no more mixes of confusing uses like MIN(MAX(a,b),c) and
MAX(MIN(a,b),c) and MIN(a,MAX(b,c)) appearing everywhere. We unify
the 'clamping' with a single macro.
Note that the behavior of this CLAMP macro is different from
the combination `MAX(low,MIN(x,high))`.
* This CLAMP macro expands to two comparisons instead of three from
MAX and MIN combination. In theory, this makes the code slightly
smaller, in case that (low) or (high) or both are computed at
runtime, so that compilers cannot optimize them. (The third
comparison will matter if (low)>(high); see below.)
* CLAMP has a side effect, that if (low)>(high) it will produce weird
results. Unlike MIN & MAX which will force either (low) or (high) to
win. No assertion of ((low)<=(high)) is done in this macro, for now.
This CLAMP macro is implemented like described in glib
<http://developer.gnome.org/glib/stable/glib-Standard-Macros.html >
and does not handle weird uses like CLAMP(a++, low++, high--) .
2016-01-15 20:26:01 +08:00
Hisham Muhammad
195f5edbc8
Merge pull request #347 from mklein-de/darwin32+64
...
Darwin: replace vm_statistics64_* with vm_statistics_*
2016-01-13 21:32:43 -02:00
Michael Klein
d312510223
Darwin: replace vm_statistics64_* with vm_statistics_*
...
Works with:
- Darwin 9.8.0 (OS X 10.5.8) PPC
- Darwin 15.2.0 (OS X 10.11.2) Intel
2016-01-13 20:57:29 +01:00
Hisham Muhammad
9c39422c71
Merge pull request #346 from mklein-de/vikeys
...
vi keys: translate ALT-h/j/k/l to arrow keys
2016-01-13 14:20:33 -02:00
Michael Klein
99b947058f
vi keys: translate ALT-h/j/k/l to arrow keys
2016-01-12 21:15:04 +01:00
Hisham Muhammad
466d4da0c6
refactor *Screen classes, add InfoScreen superclass
2016-01-12 06:00:58 -02:00
Hisham Muhammad
faf2860669
Merge branch 'mklein-de-envscreen'
2016-01-12 02:57:58 -02:00
Hisham Muhammad
032af1577c
Merge branch 'envscreen' of https://github.com/mklein-de/htop into mklein-de-envscreen
2016-01-12 02:55:43 -02:00
Hisham Muhammad
d850803eb8
Merge branch 'master' of https://github.com/hishamhm/htop
2016-01-11 20:39:08 -02:00
Hisham Muhammad
c6ca311d18
Present IO-Wait as a dot in monochrome. Fixes #345 .
...
Thank you @Explorer09 for the report!
2016-01-11 20:38:10 -02:00
Hisham Muhammad
fc61e25f5b
Merge pull request #343 from FreedomBen/typo-priority
...
Fix typo: prority => priority
2016-01-06 22:00:52 -02:00
Benjamin Porter
4b29e8485f
Fix typo: prority => priority
2016-01-06 13:49:49 -09:00
Michael Klein
b14f89e9d4
drop privileges before reading environment
2016-01-06 22:53:14 +01:00
Michael Klein
b10e54cdee
Merge remote-tracking branch 'upstream/master' into envscreen
2016-01-06 22:39:57 +01:00
Hisham Muhammad
fc4c9757b0
Merge pull request #315 from mklein-de/suid
...
add some security checks when running SUID root
2016-01-06 18:19:28 -02:00
Hisham Muhammad
82db9979b1
Merge pull request #339 from eworm-de/configure
...
use AC_HELP_STRING for proc dir
2016-01-06 18:15:39 -02:00
Christian Hesse
4c23a81d72
use AC_HELP_STRING for proc dir
2016-01-05 10:23:08 +01:00
Hisham Muhammad
6bc98bb227
Merge pull request #338 from mmcco/opl
...
Rename variable for consistency
2016-01-04 20:59:57 -02:00
Michael McConville
e595f6865e
Rename variable for consistency
...
Suggested by Hisham.
2016-01-04 16:20:51 -05:00
Hisham Muhammad
3ad2510fc2
Merge pull request #337 from eworm-de/help
...
align help output
2016-01-04 18:14:42 -02:00
Hisham Muhammad
be6b0c2830
Merge branch 'mmcco-freebsd-free'
2016-01-04 18:09:22 -02:00
Hisham Muhammad
f342a9eb83
Merge branch 'freebsd-free' of https://github.com/mmcco/htop into mmcco-freebsd-free
2016-01-04 18:08:51 -02:00
Hisham Muhammad
c5b9045f18
Plug leak in FreeBSD backend, as noted by @mmcco in #334 .
2016-01-04 18:04:50 -02:00
Hisham Muhammad
77cffaacf6
Merge pull request #334 from mmcco/cpu
...
Plug mem leak, improve CPU enumeration logic
2016-01-04 18:02:36 -02:00
Christian Hesse
9ca646acbb
align help output
2016-01-04 16:02:29 +01:00
Michael McConville
61f2d674b0
Remove NULL-checks before free()
...
These are never necessary when using the standard library.
2016-01-03 16:59:44 -05:00
Michael McConville
198592a0f1
Plug mem leak, improve CPU enumeration logic
...
I think this leak may still exist in the FreeBSD port.
2016-01-03 16:56:33 -05:00
Hisham Muhammad
be9edc5d43
Merge branch 'master' of https://github.com/hishamhm/htop
2016-01-03 16:32:48 -02:00
Hisham Muhammad
70cd5c2b88
Check range when accessing keys table.
...
Should fix #321 .
2016-01-03 16:31:44 -02:00
Hisham Muhammad
86954f9204
Merge pull request #331 from mmcco/fixes
...
OpenBSD fixes and updates
2016-01-03 16:17:31 -02:00
Hisham Muhammad
fe83bc8e68
Merge pull request #332 from mmcco/maintainer
...
Fix spelling of "maintainer"
2016-01-03 16:12:29 -02:00
Michael McConville
918cfd54d6
Fall back to sysctl's command name, and a bugfix
...
This is what OpenBSD's top(1) does when the libkvm call fails, and it's
a good idea.
This commit also fixes process name construction. The space was being
written one character too far.
2016-01-02 22:05:20 -05:00
Michael McConville
3da36bbc61
Use dynamically allocated memory for process names
...
Even when they're constant, as is the case for zombie processes.
2016-01-02 17:11:23 -05:00
Michael McConville
c1b3289219
Check for allocation failure
...
Pointed out by Michael Reed.
2016-01-02 12:20:40 -05:00
Michael McConville
ae5c01f485
Use err() rather then errx() for sysctl()
...
So that we can see errno. Pointed out by Michael Reed.
2016-01-02 12:17:35 -05:00
Michael McConville
7170382706
Fix spelling of "maintainer"
2016-01-02 12:11:26 -05:00
Michael McConville
22cfda6332
OpenBSD fixes and updates
...
I forgot how awful the process name logic was. It was an initial hack to
get it running, and I forgot to clean it up.
I also had to change a few includes and error function uses.
2016-01-02 11:57:53 -05:00
Hisham Muhammad
c8cadfb905
Merge branch 'master' of https://github.com/hishamhm/htop
2015-12-23 13:58:35 -02:00
Hisham Muhammad
526eca9a19
Merge pull request #320 from etosan/master
...
major meters update
2015-12-23 13:57:51 -02:00
Hisham Muhammad
adaa4de295
Merge pull request #325 from Explorer09/master
...
Fix text on function bar when moving meters.
2015-12-22 13:24:55 -02:00
Explorer09
71ad9b304d
Fix function bar when moving meters.
...
Before:
[Up]Up [Dn]Down [Lt]Left [Rt]Right [Arrow]Confirm [Enter]Delete [Del]Done
After:
[Up]Up [Dn]Down [Lt]Left [Rt]Right [Enter]Confirm [Del]Delete [Esc]Done
2015-12-22 17:43:31 +08:00
Martin "eto" Misuth
c67e482c67
fixed bug with PPID of parent not being set on first process list scan pass.
...
this caused htop to show processes as if freebsd kernel was their parent.
on next pass reparenting code took chance to run, and that caused process to jump around.
this fixed behaviour should be the correct one
2015-12-17 08:48:53 +01:00
Hisham Muhammad
802e216870
Extend buffer for reading lines from /proc.
...
Apparently a line longer than 255 chars was spotted in the wild:
http://serverfault.com/questions/577939/linux-ps-htop-show-processes-running-for-hundreds-or-thousands-of-days-though-h#comment676098_577939
2015-12-14 13:27:11 -02:00
Martin "eto" Misuth
e0b6e2eef2
enabled swap meter
2015-12-13 04:16:06 +01:00
Martin "eto" Misuth
9d55c56f26
added Support for memory meter, and slightly adjusted process monitor logic
2015-12-13 04:11:35 +01:00
Martin "eto" Misuth
80f594f314
added CPU% for processes in process list
2015-12-13 01:39:54 +01:00
Martin "eto" Misuth
c2769985cc
added cpu monitoring for both single core and smp systems, some notes in process monitor
2015-12-13 00:21:02 +01:00
Martin "eto" Misuth
bc84920b91
added support for effective UID/username change detection
2015-12-11 11:01:24 +01:00
Hisham Muhammad
563abbc44b
Merge pull request #319 from acatton/master
...
Redraw the panel when resizing the window during an incremental search
2015-12-10 18:34:57 -02:00
Antoine Catton
065aab5247
Redraw the panel when resizing the window during an incremental search
...
KEY_RESIZE wasn't handled by the incremental search. Resulting in this
bug:
* Set your terminal window to a small size.
* Press '\' to filter the processes
* Maximize your terminal window
* The list of processes didn't resize.
This change fixes this bug.
Thank you Julian Andrews (@julianandrews) for finding this bug.
2015-12-09 23:46:25 -07:00