summaryrefslogtreecommitdiffstats
path: root/Settings.c
AgeCommit message (Collapse)Author
2020-11-16Merge branch 'hili-new-old' of adsr/htop into highlight-new-old-processesDaniel Lange
2020-11-15Drop hideThreads SettingChristian Göttsche
It is only used to read process directories on RedHat beginning with a dot. Unconditionally accept directories with a starting dot.
2020-11-02Embracing branchesBenny Baumann
2020-11-02Spacing around operatorsBenny Baumann
2020-11-02Whitespace and indentation issuesBenny Baumann
2020-10-31Address items from reviewAdam Saponara
2020-10-30Highlight new and old processes (#74)Adam Saponara
2020-10-20Merge branch 'Xalloc_Cleanup' of cgzones/htopDaniel Lange
2020-10-20Merge branch 'number-cpus-from-zero' of zevweiss/htopDaniel Lange
* This changes the default to count CPUs from zero (instead of starting at one) * Settings logic is inverted, backwards compatibility is preserved
2020-10-19XUtils string related updatesChristian Göttsche
- allow count out-parameter of String_split() to be NULL - introduce xStrndup() - do not allow NULL pointers passed to String_eq() it is not used in any code - implement String_startsWith(), String_contains_i() and String_eq() as inline header functions - adjust several conversion issues
2020-10-18Make all required includes explicitBenny Baumann
Information as seen by IWYU 0.12 + clang 9 on Linux
2020-10-16Rename StringUtils.[ch] to XUtils.[ch]Benny Baumann
2020-10-12Settings: do not save initial cpu countChristian Göttsche
Not needed and confusing with ProcessList.cpuCount
2020-10-05Update License consistently to GPLv2 as per COPYING fileDaniel Lange
2020-10-03Introduce ARRAYSIZEChristian Göttsche
2020-09-17Reorder check to avoid crash on invalid process field settingChristian Göttsche
If using a setting from a different development version with an unsupported process field, first dereferencing Process_fields[id] yields to a crash: ================================================================= ==19530==ERROR: AddressSanitizer: global-buffer-overflow on address 0x000000612800 at pc 0x000000521d1a bp 0x7ffec47a5ff0 sp 0x7ffec47a5fe8 READ of size 8 at 0x000000612800 thread T0 #0 0x521d19 in readFields .htop/Settings.c:107:40 #1 0x51d117 in Settings_read .htop/Settings.c:141:10 #2 0x51c0c4 in Settings_new .htop/Settings.c:382:12 #3 0x4eafe2 in main .htop/htop.c:220:25 #4 0x7fa450570cc9 in __libc_start_main csu/../csu/libc-start.c:308:16 #5 0x427a59 in _start (.htop/htop+0x427a59) 0x000000612800 is located 0 bytes to the right of global variable 'Process_fields' defined in 'linux/LinuxProcess.c:24:18' (0x6118a0) of size 3936 SUMMARY: AddressSanitizer: global-buffer-overflow .htop/Settings.c:107:40 in readFields Shadow bytes around the buggy address: 0x0000800ba4b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x0000800ba4c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x0000800ba4d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x0000800ba4e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x0000800ba4f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 =>0x0000800ba500:[f9]f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 0x0000800ba510: f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 0x0000800ba520: f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 0x0000800ba530: f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 0x0000800ba540: f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 0x0000800ba550: f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb Shadow gap: cc ==19530==ABORTING
2020-09-15Number CPUs from zero by default.Zev Weiss
Numbering from one is idiosyncratic and inconsistent with basically everything else in the world; it doesn't make much sense as default behavior. All naming is updated to reflect that numbering from one is a non-default, opt-in option. The old label of the flag saved in htoprc ("cpu_count_from_zero") is still supported for backwards compatibility with existing configs, however.
2020-09-15Revert the vim_mode setting for now, needs a rethinkNathan Scott
There have been too many bugs reported in vim_mode, and the proposed fixes are increasingly fragile - hence we have decided to back it out for now. For reference: https://github.com/htop-dev/htop/issues/69 https://github.com/htop-dev/htop/pull/37 https://github.com/htop-dev/htop/pull/106 The whitespace changes also arrived in commit 12805f61d not sure what that was about, but backed out as well.
2020-09-12Clean up some code duplication in the header filesHugo Musso Gualandi
PR htop-dev/htop#70 got rid of the infrastructure for generating header files, but it left behind some code duplication. Some of cases are things that belong in the header file and don't need to be repeated in the C file. Other cases are things that belong in the C file and don't need to be in the header file. In this commit I tried to fix all of these that I could find. When given a choice I preferred keeping things out of the header file, unless they were being used by someone else.
2020-09-03Axe automated header generation.Zev Weiss
Reasoning: - implementation was unsound -- broke down when I added a fairly basic macro definition expanding to a struct initializer in a *.c file. - made it way too easy (e.g. via otherwise totally innocuous git commands) to end up with timestamps such that it always ran MakeHeader.py but never used its output, leading to overbuild noise when running what should be a null 'make'. - but mostly: it's just an awkward way of dealing with C code.
2020-08-26Merge branch 'ci-hwloc-job' of https://github.com/bertwesarg/htop into ↵Nathan Scott
bertwesarg-ci-hwloc-job
2020-08-20Merge branch 'hishamhm-pull-959'Nathan Scott
2020-08-20Merge branch 'hishamhm-pull-932'Nathan Scott
2019-10-31Fix whitespaceDaniel Flanagan
2019-10-31Add simple vim modeDaniel Flanagan
This commit adds a "vim_mode" setting (false/`0` by default) that causes keys to be remapped in the following way by the `ScreenManager`: + h -> LEFT + j -> DOWN + k -> UP + l -> RIGHT + LEFT -> h (toggle help) + DOWN -> j (noop) + UP -> k (open kill menu) + RIGHT -> l (lsof current process) + K (Shift+K) -> k (open kill menu) + J (Shift+J) -> K (toggle show/hide kernel threads) + L (Shift+L) -> l (lsof current process) I couldn't figure out where the manpage documentation is in the repo, though I admittedly did not look particularly hard. I believe this change would be a welcome option for heavy vim users like myself who would like a familiar way to get around in htop.
2019-08-10Add a display option to hide CPU usage number from CPU meter.Arnavion
2019-08-09Add new display option to also show CPU frequency in CPU meters.Arnavion
The option is only implemented on Linux. On other platforms, and on Linuxes that do not expose the relevant sysfs file, the frequency will be 0. The "CPU average" meter does not show a frequency, only the individual per-CPU meters.
2019-07-12Added an option to disable the mouse.MartinJM
2018-02-18Make settings file finding sequence more straightforwardHisham Muhammad
Avoid unnecessary access() call and make code read more linearly.
2018-02-18Only consider a read successful when the file seems validHisham Muhammad
Require at least the `fields` entry to be present, so we can have a decent guess that it was indeed a settings file.
2017-07-26Merge branch 'master' of https://github.com/hishamhm/htopHisham Muhammad
2017-07-26Security review: make privilege dropping-restoring optional.Hisham Muhammad
This is/was necessary only on macOS, because you needed root in order to read the process list. This was never necessary on Linux, and it also raises security concerns, so now it needs to be enabled explicitly at build time.
2017-07-24Settings: do not emit trailing whitespaceWael M. Nasreddine
2016-06-19Dynamically adjust the size of line readsHisham Muhammad
* Dynamically adjust the size of line reads. * Remove some more uses of fgets with arbitrary sizes. * Fix reading of lines and width of n column. Fixes #514.
2016-05-30Silence cast warning.Hisham
2016-05-25Silence warnings about seteuid return value.Hisham
Closes #483.
2016-02-02Initialize default meter modes properly.Hisham
2016-02-02Merge branch 'xalloc'Hisham
2016-02-02Check for failure in allocations.Hisham
2016-01-31Differentiate threads by default.Hisham
2015-12-09Fix fopen mode in Settings_read()Michael Klein
2015-12-02drop privileges during Settings_read()/Settings_write()Michael Klein
2015-08-19Rename String to StringUtils.David Hunt
Fixes building on case-insensitive filesystems where String.h gets confused with <string.h>. From d734dacea0a10d0465dad4e95b3421511e7da112 Mon Sep 17 00:00:00 2001 From: David Hunt <dhunt@iolanthe.attlocal.net> Date: Sat, 11 Jul 2015 20:56:31 -0500 Subject: [PATCH 1/8] Rename String to StringUtils
2015-08-12Ensure default matches classic htop behavior.Hisham Muhammad
2015-08-12Merge pull request #148 from nckx/display-basenameHisham Muhammad
[PATCH] New setting: "Show program path"
2015-08-07New setting: "Show program path"Tobias Geerinckx-Rice
Add a setting to hide all but the last component from the programme path, leaving only the "basename". Makes htop more usable on smaller screens, or systems with longer than average paths. Off by default. "Highlight program basename" will still be respected, to further visually separate process names from their arguments.
2015-05-13store cpuCount in an attributeHisham Muhammad
2015-04-09Reset to the default scheme, not the last one.Hisham Muhammad
2015-04-09Fix saving new color scheme.Hisham Muhammad
2015-03-25Fix NULL-termination of array for later use by String_freeArray.Hisham Muhammad