Commit Graph

61 Commits

Author SHA1 Message Date
Hisham Muhammad
f914617508 Make settings file finding sequence more straightforward
Avoid unnecessary access() call and make code read more linearly.
2018-02-18 20:42:17 -03:00
Hisham Muhammad
03b2581745 Only consider a read successful when the file seems valid
Require at least the `fields` entry to be present,
so we can have a decent guess that it was indeed a settings file.
2018-02-18 20:35:23 -03:00
Hisham Muhammad
3975e9ce5c Merge branch 'master' of https://github.com/hishamhm/htop 2017-07-26 16:16:10 -03:00
Hisham Muhammad
543d65c6ab Security review: make privilege dropping-restoring optional.
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-26 15:40:55 -03:00
Wael M. Nasreddine
ce0cf3c457
Settings: do not emit trailing whitespace 2017-07-24 16:36:27 -07:00
Hisham Muhammad
0fa03322a9 Dynamically adjust the size of line reads
* 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-06-19 18:55:35 -03:00
Hisham
7ededce9b5 Silence cast warning. 2016-05-30 12:22:07 -03:00
Hisham
fa0c637c55 Silence warnings about seteuid return value.
Closes #483.
2016-05-25 21:37:07 -03:00
Hisham
820c079b14 Initialize default meter modes properly. 2016-02-02 16:15:07 +01:00
Hisham
ffcf48fb74 Merge branch 'xalloc' 2016-02-02 15:58:45 +01:00
Hisham
b54d2dde40 Check for failure in allocations. 2016-02-02 15:53:02 +01:00
Hisham
6434db5b6b Differentiate threads by default. 2016-01-31 12:07:48 +01:00
Michael Klein
84783bd6f0 Fix fopen mode in Settings_read() 2015-12-09 20:34:11 +01:00
Michael Klein
42b08f2233 drop privileges during Settings_read()/Settings_write() 2015-12-02 23:42:10 +01:00
David Hunt
5e602f18d5 Rename String to StringUtils.
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-19 13:45:20 -03:00
Hisham Muhammad
e1e3ffad19 Ensure default matches classic htop behavior. 2015-08-12 17:24:41 -03:00
Hisham Muhammad
4d44c35519 Merge pull request #148 from nckx/display-basename
[PATCH] New setting: "Show program path"
2015-08-12 17:16:50 -03:00
Tobias Geerinckx-Rice
293eec4265 New setting: "Show program path"
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-08-07 14:20:14 +02:00
Hisham Muhammad
f1e8a074f2 store cpuCount in an attribute 2015-05-13 15:13:55 -03:00
Hisham Muhammad
01737ed66b Reset to the default scheme, not the last one. 2015-04-09 15:44:26 -03:00
Hisham Muhammad
dc4576d327 Fix saving new color scheme. 2015-04-09 15:19:31 -03:00
Hisham Muhammad
70abaadbaf Fix NULL-termination of array for later use by String_freeArray. 2015-03-25 16:36:42 -03:00
Hisham Muhammad
9ff5d2b243 Fix saving of header states, motion in Setup screen. 2015-03-16 23:01:21 -03:00
Hisham Muhammad
adbfe3c3f1 Get FreeBSD tree to compile again with latest changes. 2015-03-16 03:14:20 -03:00
Hisham Muhammad
be1700cf94 Isolate portable and Linux-specific process fields. 2015-03-16 01:43:04 -03:00
Hisham Muhammad
e3fe3962cb Move more Linux-specific code into Linux subdir. 2015-03-15 20:29:13 -03:00
Hisham Muhammad
c2108e5a48 Another mega-patch for the refactoring process.
Kinda runs, but functionality from the original main loop
is still missing. Patience.
2015-01-23 03:08:21 -02:00
Hisham Muhammad
3383d8e556 Sorry about the mega-patch.
This is a work-in-progress, code is currently broken.
(Some actions, and notably, the header, are missing.)
2015-01-21 23:27:31 -02:00
Hisham Muhammad
b192af006f Decouple Header from Meter classes.
(Yes, that's dynamic typing!)
2014-11-27 18:38:52 -02:00
Hisham Muhammad
27da00f339 Improve function prototype, helping analysis. 2014-04-24 19:50:33 -03:00
Hisham Muhammad
4e2c2d7927 Fix resource leak. 2014-04-24 19:29:20 -03:00
Hisham Muhammad
823bdbae13 safer code, check result of lstat 2014-04-22 20:35:57 -03:00
Hisham Muhammad
6d90e58c01 alignment improvements 2014-02-27 16:35:22 -03:00
Hisham Muhammad
8ace29c267 Make CPU meter optionally account guest time in its percentages 2013-12-18 02:58:34 +00:00
Hisham Muhammad
6cfa9e0bf2 Performance improvements due to conditional parsing of IO data depending on selected fields.
On my machine, this gives a ~20% improvement in htop process time use with the default config.
2013-05-24 22:46:01 +00:00
Hisham Muhammad
f44a8f2009 Option to update process names on every refresh
(thanks to Rob Hoelz)
2012-10-20 00:43:25 +00:00
Hisham Muhammad
368cb1fe20 avoid deleting valid symbolic links to .htoprc
so that home directories can be used with both old and new versions of htop
(see #3496731).
2012-03-05 11:12:58 +00:00
Hisham Muhammad
45f7a4fc8d Remove old memory debugging routines. We have Valgrind nowadays. 2011-12-26 22:04:29 +00:00
Hisham Muhammad
84281bdc44 major header cleanup 2011-12-26 21:35:57 +00:00
Hisham Muhammad
93233a67ea Move .htoprc to XDG-compliant path ~/.config/htop/htoprc,
respecting $XDG_CONFIG_HOME 
(thanks to Hadzhimurad Ustarkhan for the suggestion.)
2011-12-25 20:22:41 +00:00
Hisham Muhammad
5b0b2255ef Fix typo that has been lurking since 2006 2011-12-23 19:12:17 +00:00
Hisham Muhammad
7ca1081712 Mega-commit with features and tweaks for 1.0:
* Performance improvements
* Support for splitting CPU meters into two or four columns
  (thanks to Wim Heirman)
* Switch from PLPA, which is now deprecated, to HWLOC.
* Bring back support for native Linux sched_setaffinity,
  so we don't have to use HWLOC where we don't need to.
* Support for typing in user names and column fields in selection panels.
2011-11-18 06:08:56 +00:00
Hisham Muhammad
27b470e10d Don't simply trust that string splits were successful... 2011-08-29 20:45:29 +00:00
Hisham Muhammad
da604d355a be more precise in the comment 2011-08-12 16:37:27 +00:00
Hisham Muhammad
300caa076e Tempus fugit. 2011-05-26 16:35:07 +00:00
Hisham Muhammad
a9c0ea3753 * Option for counting CPUs from zero
(thanks to Sean Noonan)
* Meters update in every screen (no longer halting while on Setup, etc.)
2011-03-22 20:37:08 +00:00
Hisham Muhammad
a600d5a6e9 Tempus fugit. 2010-02-25 02:08:18 +00:00
Hisham Muhammad
8f230920cd show custom thread names 2010-02-25 01:37:31 +00:00
Hisham Muhammad
c9e59b4a33 minor tweaks by David Weber 2010-02-22 20:54:01 +00:00
Hisham Muhammad
da23c8c5a1 Clean up headers by using 'static' whenever possible.
Reduces resulting code size.
2008-03-09 08:58:38 +00:00