69efa94f9f
Use String_eq wrapper instead of raw strcmp
2021-01-30 14:21:26 +01:00
04cf590967
FreeBSD: drop minflt and implement majflt
2021-01-30 14:21:26 +01:00
46370231e3
FreeBSD: drop unused idle thread code
2021-01-30 14:21:26 +01:00
8c43856380
FreeBSD: populate processor field
2021-01-30 14:21:26 +01:00
79620d01c0
FreeBSD: drop unused jail_errmsg variable
2021-01-30 14:21:26 +01:00
399add39ca
FreeBSD: simplify kernel thread logic
2021-01-30 14:21:26 +01:00
56c4055fd1
FreeBSD: drop unused ProcessList fields
2021-01-30 14:21:26 +01:00
fa499fc155
FreeBSD: misc
2021-01-30 14:21:26 +01:00
fdaa15bd8d
Linux: overhaul io process fields
...
- avoid UBSAN conversions
- print N/A on no data (i.e. as unprivileged user)
- fix rate calculation to show bytes (instead of a thousandth)
- print bytes as human number (i.e. 8MB) instead of 8388608
- stabilize sorting by adjusting NAN values to very tiny negative number
2021-01-30 14:21:26 +01:00
fee744abd2
Update generic process field display
...
- sort cases by identifier
- use check snprintf
- color nice value of 0 as gray
- color cpu and memory percentages of 0.0 as gray
- color number of threads of 1 as gray
- color idle and sleeping state as gray
- color tgid matching pid (indicating main thread) as gray
2021-01-30 14:21:26 +01:00
d5de1bc23d
Overhaul sorting of state process column
...
Do not sort by ascii value of the state identifier, sort by relevance
2021-01-30 14:21:26 +01:00
a3c8285237
Refactor to tty_nr process field display
...
If no terminal name can be found, fall back to generic display method
with major and minor device numbers.
Print special value '(none)' in case both are zero.
2021-01-30 14:21:26 +01:00
03d6345c89
Process: document process fields
...
Drop unused fields 'flags' and 'exit_signal'
2021-01-30 14:21:26 +01:00
93378b9ee5
fix typo/missing newline for --enable-static
...
https://i.imgur.com/byraZxG.png
2021-01-30 13:20:09 +01:00
3acf28c259
Unsupported: pass compilation
2021-01-29 14:12:44 +01:00
bd694c0ce6
Do not call exit(3) in signal handler
...
Call safe _exit(2) instead
2021-01-29 12:38:30 +01:00
fd8c0611af
Use different function on different detection method to avoid caching
...
Using the same function for the same library causes AC_CHECK_LIB to use
cached results.
Since we change the detection method via different or no
ncurses(5|6)-config invocation, avoid such caching by using different
functions.
2021-01-28 23:40:37 +01:00
f27bab470b
Drop duplicate option
...
Option subdir-objects is now define in configure.ac
2021-01-28 23:40:37 +01:00
34da6fdadb
Avoid syntax injection inside code block
...
Co-authored-by: BenBE <BenBE@geshi.org >
2021-01-28 09:21:18 +01:00
e54a790b14
TraceScreen: draw panel header
2021-01-28 09:21:18 +01:00
3c61813ea6
InfoScreen: add mouse wheel scroll
2021-01-28 09:21:18 +01:00
fd45845829
InfoScreen: fix mouse selection
2021-01-28 09:21:18 +01:00
92fb69f5a0
Merge branch 'todo' of cgzones/htop
...
Make CRT_init get an instance of Settings instead of a separate colorScheme
2021-01-28 07:36:14 +01:00
5644d0194b
Merge branch 'default_libcap' (configure overhaul) of cgzones/htop
2021-01-28 07:31:15 +01:00
6dba60f6bd
Pass Settings to CRT_init
...
Resolve todo
2021-01-27 17:14:15 +01:00
211121f060
Drop invalid todo
...
The surrounding code has nothing to do with colors
2021-01-27 17:06:21 +01:00
d77703b3dc
ci: use as-needed linker flag in gcc full-featured build
...
Test whether there are any linking issues
2021-01-27 15:36:50 +01:00
3035e29e74
Use typedef names instead of raw struct ones
2021-01-26 21:16:23 +01:00
575edffb4b
Add configure option to create static htop binary
2021-01-25 18:01:39 +01:00
759a34039c
configure: fail immediately on missing requirement
2021-01-25 17:57:21 +01:00
38b6a0148f
configure: misc modernizations
...
- require autoconf version 2.69
was released in 2012 and one still can configure and build on older
systems (just not generate the configure script)
- use modern C99 compiler check
- drop obsolete checks: AC_C_CONST, AC_FUNC_CLOSEDIR_VOID, AC_FUNC_STAT
- drop AC_HEADER_STDBOOL in favor of C99 compatibility
2021-01-25 17:57:21 +01:00
f3623b7880
configure: reformat for improved reabability
2021-01-25 17:57:21 +01:00
5e103ff9d1
configure: overhaul option handling
...
Switch Linux capabilities default from "no" to "check"
Document default settings
Use more readable formatting
2021-01-25 17:54:37 +01:00
0f04714a03
Fix possible division by zero
...
Do not pass a nmemb of 0 to calloc, cause it's unportable and forbidden
with our wrapper.
Found by Coverity
2021-01-25 17:33:29 +01:00
2ec44098f9
Allow meters in text mode to span empty neighbors to the right
...
Closes : #484
2021-01-23 15:20:47 +01:00
6f6e0ec571
Update copyright for 2021
2021-01-22 20:06:51 +01:00
d269d7247f
Merge branch 'mop-up-sort-mess' of fasterit/htop
2021-01-22 16:26:42 +01:00
041feeca18
Add note to users about sort logic changes to ChangeLog
2021-01-22 16:24:33 +01:00
074703bd5c
Implement stable tie-breaker and add more defaultSortDesc fields as per cgzones' suggestions, simplify Process_compare flow from BenBE
2021-01-22 09:57:44 +01:00
4dadbe3b34
configure: add -Winit-self warning
2021-01-21 19:49:07 +01:00
4531b31d92
Sort out the mess around column sorting that had accumulated over time
2021-01-21 14:27:23 +01:00
b20bb543ce
Find the correct library for clock_gettime before trying to use it
...
Otherwise if clock_gettime is librt then this code will incorrectly believe
that the function does not exist at all.
2021-01-20 15:04:03 +01:00
03824da684
Linux: individual huge page values in the huge page meter
2021-01-19 18:06:48 +01:00
4d85848988
Linux: handle hugepages
...
Subtract hugepages from normal memory.
Add a HugePageMeter.
Closes : #447
2021-01-19 18:06:48 +01:00
71f51a20c1
Define PATH_MAX for GNU/hurd
...
Otherwise fails with
"> linux/LinuxProcessList.c:889:20: error: ‘PATH_MAX’ undeclared (first use in this function)"
2021-01-16 12:31:44 +01:00
1f20c0fb3d
Linux: fall back to cpuinfo on slow scaling_cur_freq read
...
On some AMD and Intel CPUs read()ing scaling_cur_freq is quite slow
(> 1ms). This delay accumulates for every core.
If the read on CPU 0 takes longer than 500us bail out and fall back to
reading the frequencies from /proc/cpuinfo.
Once the condition has been met, bail out early for the next couple of
scans.
Closes : #471
2021-01-15 20:55:53 +01:00
b5a5e83470
LED Meter: display wide characters and restore non-wide ncurses support
...
Print wide characters, like degree sign, properly via mvadd_wch().
Ignore attributes when returning value from RichString_getCharVal() in
non-wide ncurses mode to test against raw characters.
2021-01-15 20:41:10 +01:00
b9adc30b86
RichString: implement safe rewind
...
The current rewind logic causes issues when rewinding over the short
string optimization boundary.
2021-01-15 20:41:10 +01:00
08ac22ddb9
RichString: refactor writing limited amount of columns
...
Closes : #468
2021-01-15 20:41:10 +01:00
ceee96dcba
Do not try to set not owned capabilities
...
If the process has already less capabilities than we are trying to keep,
do not try to set them.
2021-01-13 22:12:06 +01:00