summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* README: swap regular file and symlinkmainChristian Hesse22 hours2-189/+189
| | | | | | | This allows the markdown formatted page to be rendered correctly in other web frontends, like cgit. https://git.zx2c4.com/cgit/about/
* CRT: handle (ignore) signals `USR1` and `USR2`Christian Hesse22 hours1-0/+4
| | | | These should not kill the application.
* Linux: Correctly mark trailing offline CPU threadsMartin Rys22 hours1-7/+18
|
* Fix typoChristian Göttsche23 hours1-1/+1
| | | | [ci skip]
* Avoid glibc FILE API for number of open filesBenny Baumann23 hours1-5/+5
|
* Avoid glibc FILE API for maxpidBenny Baumann23 hours1-9/+15
|
* Avoid glibc FILE API for loadavgBenny Baumann23 hours1-13/+14
|
* Avoid glibc FILE API for uptime readingBenny Baumann23 hours1-7/+13
|
* Avoid glibc FILE API for secattrBenny Baumann23 hours1-10/+4
|
* Avoid glibc FILE API for oom_scoreBenny Baumann23 hours1-10/+15
|
* Avoid glibc FILE voodooBenny Baumann23 hours1-4/+5
| | | | Addresses #1408
* Linux: scan GPU based on previous activityChristian Göttsche24 hours2-6/+13
| | | | | | Instead of ignoring the standard file descriptors 0, 1 and 2 scan for GPU usage of a process only if that process had activity last cycle or its last scan was more than five seconds ago.
* Linux: add GPU meter and process columnChristian Göttsche24 hours14-2/+560
| | | | | | | Based on the DRM client usage stats[1] add statistics for GPU time spend and percentage utilization. [1]: https://www.kernel.org/doc/html/latest/gpu/drm-usage-stats.html
* Short circuit zero time in Row_printTime()Christian Göttsche24 hours1-0/+8
| | | | Bail out early if the passed time is 0 and shadow the result.
* Introduce String_eq_nullable()Christian Göttsche24 hours1-0/+10
|
* Introduce autoTitleRightAlign column flagChristian Göttsche24 hours11-8/+13
| | | | | | Instead of handling PERCENT_CPU as a special case for whether to align the title of a dynamically sized column to the right or the left introduce a new flag, which can be reused by other columns.
* Store time of the previous process scanChristian Göttsche24 hours2-3/+8
| | | | | | | The difference of scans is useful for utilization calculations. To avoid divisions by 0 on first scan set monotonicMs also on first scan.
* TypoBenny Baumann6 days1-1/+1
|
* Check for sufficient buffer space only after clampingBenny Baumann6 days1-2/+3
| | | | The clamping itself has a sanity check when debug mode is active.
* Simplify expression in Process_updateCPUFieldWidths()Explorer096 days1-1/+1
| | | | Because the compilers weren't yet able to optimize this one. :)
* Check width in Row_printPercentage()Christian Göttsche8 days1-0/+4
| | | | | | | | | | The passed width should always be at least 4, otherwise printing will always truncate and lead to an abort(). The passed should not be greater or equal to the available buffer size, otherwise printing will always truncate and lead to an abort(). Add fallback for non debug builds.
* Avoid too large CPU field widthsChristian Göttsche8 days1-1/+1
| | | | | In case the current CPU usage percentage is NAN the width calculation is invalid. Use the default with of 4, which is appropriate for "N/A ".
* ci: update LLVM repositoriesChristian Göttsche8 days1-4/+4
| | | | | The GitHub runners for the LLVM jobs are using ubuntu-latest, which is as of today Ubuntu 22.04 (jammy).
* Revert "Workaround for ASAN-induced segfaults in Github Ubuntu runner images"Christian Göttsche8 days1-5/+0
| | | | | | Should be fixed in LLVm 17: https://github.com/llvm/llvm-project/commit/fb77ca05ffb4f8e666878f2f6718a9fb4d686839 This reverts commit 53bd369be760aaeb5e28cb965e9edcfb3f232d92.
* ci: bump to LLVM 18Christian Göttsche8 days1-14/+14
|
* Replace OpenCollective with Hack ClubDaniel Lange8 days1-1/+1
|
* Fix the compiler name for OpenBSD.fraggerfox11 days1-1/+1
|
* Ignore FOCUS_IN and FOCUS_OUT events if these have been activated within xtermDaniel Lange14 days3-0/+7
| | | | Closes: #1410
* Workaround for ASAN-induced segfaults in Github Ubuntu runner imagesDaniel Lange2024-03-141-0/+5
|
* Merge branch 'feat/refuse-saving-symlinked-config' (branch name superseded) ↵Daniel Lange2024-03-123-3/+14
|\ | | | | | | of Scrumplex/htop
| * Print message if config file was resolvedSefa Eyeoglu2024-03-123-7/+12
| | | | | | | | Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
| * Resolve configuration pathSefa Eyeoglu2024-03-111-0/+6
|/ | | | | | | | Some configuration systems might link a htop configuration file and we don't really want to replace the symlink but rather its source. This will also allow us to fail in case the source is read only. Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
* Add Solaris to the CIfraggerfox2024-02-291-0/+21
|
* Add Dragonfly BSD to the CIfraggerfox2024-02-291-0/+23
|
* Add OpenBSD to the CIfraggerfox2024-02-291-0/+23
|
* Add NetBSD to the CIfraggerfox2024-02-291-0/+25
|
* Add FreeBSD to the CIfraggerfox2024-02-291-0/+21
|
* Fix warnings in OpenBSD build.fraggerfox2024-02-291-1/+1
|
* Merge branch 'kew24-patch-1'Nathan Scott2024-02-291-1/+1
|\
| * documentation update "pcp htop" –> "pcp-htop"kew242024-02-281-1/+1
|/ | | | | Rarely (if ever) do we see references in the documentation to `pcp htop` (it's mainly just `pcp-htop`, with a hyphen instead of a space). I fixed the documentation to reflect this. Feel free to ignore this if the space is intentional.
* Update Settings.cKen McDonell2024-02-051-1/+1
| | | Co-authored-by: BenBE <BenBE@geshi.org>
* Minor bug fixes for Coverity issuesKen McDonell2024-02-052-1/+4
| | | | | | | | | | | | | | | | | Over in the PCP project, Coverity has spotted a couple of minor issues in the htop code. This commit addresses them: Settings.c need to take control of the umask before calling mkstemp() pcp/Platform.c Although Platform_getMaxPid() returns a pid_t (which strictly speaking is signed), the value is used to call Row_setPidColumnWidth() and a negative value here is not good ... using INT_MAX instead of UNIT_MAX on the (unlikely) error path makes no practical difference but may keep Coverity quiet
* darwin/Platform.c: use mach/port.hSergey Fedorov2024-02-041-1/+1
| | | | | Unbreak builds on macOS versions where _mach_port_t.h does not exist. mach/port.h exists on every macOS and has needed defines.
* Disable basename matching for kernel threadsChristian Göttsche2024-01-281-2/+8
| | | | | | | | | | | Kernel threads are commonly not based on an executable and their cmdline therefore just a human readable string. On Linux this string might contain slashes, e.g. kworker/7:5H-ttm, which cause Process_writeCommand() to print only the trailing parts if the option *Show Program Path* is disabled. Reported-and-Suggested-By: mmrmaximuzz Fixes: #1391
* Read executable name before checking the command lineBenny Baumann2024-01-271-39/+48
| | | | This potentially avoids guessing the right path in the presence of spaces inside the executable path.
* Properly track if we actually hit any token while scanning cmdlineBenny Baumann2024-01-271-49/+78
|
* Explicitly check sscanf(3) and fscanf(3) return valuesChristian Göttsche2024-01-255-16/+15
| | | | | | | | | Compare the return value of sscanf(3) and fscanf(3) explicitly against the expected number of parsed items and avoid implicit boolean conversion. Such an implicit conversion would treat EOF (-1) the same as at least one item parsed successfully. Reported by CodeQL.
* Linux: drop preconditions for free_and_xStrdup()Christian Göttsche2024-01-201-6/+0
| | | | | free_and_xStrdup() internally skips the strdup() allocation if both strings exist are are the same. Drop such conditions prior of a call.
* Linux: rename variable for clearer intentChristian Göttsche2024-01-201-2/+2
| | | | | | Make it more clear the variable stores the previous tty number (similar to lasttimes), while the current one gets set in the intermediate LinuxProcessTable_readStatFile().
* RichString: add access function annotationsChristian Göttsche2024-01-201-0/+3
|

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