Commit Graph

202 Commits

Author SHA1 Message Date
Laslo Hunhold 0f7e022381
Fix a little logic error 2017-08-14 11:35:52 +02:00
Laslo Hunhold e1e1b1d79a
Add pscanf()
This reduces a lot of equivalent code to one function call.
2017-08-14 08:24:54 +02:00
Laslo Hunhold 796b661284
Refactor main()
We remove the hack with the sleep and global "delay"-variable and use a
monotonic clock to derive the desired monotonic properties of the tool.
Inside each function that demands a personal delay we can then just do a
nanosleep() and be done with it.
It's a shame that timespec is so ugly to work with, but there's really
no way to make it more beautiful. However, at this cost though we
finally can set the interval times in milliseconds and not only just
seconds.

We remove setlocale(), because nothing good ever came out of this
function.

Besides that we have some more code refactoring, especially in the
argument loop which saves us a bit of complexity.
2017-08-13 23:45:16 +02:00
Laslo Hunhold 3468a6e368
Simplify signal handling a bit 2017-08-13 23:32:14 +02:00
Laslo Hunhold 450e8e6e6b
Remove unnecessary prototypes 2017-08-13 23:32:06 +02:00
Laslo Hunhold ecf2779904
Remove unnecessary blank lines after license-notice 2017-08-13 23:31:56 +02:00
Aaron Marcher c4779c9b15
Removed #define for unknown_str
Debugging #define is very difficult. The performance overhead of static const
char is negligible.
2017-08-12 13:27:30 +02:00
Aaron Marcher be12b6b350
Removed #define for update interval
Debugging #define, especially in mathematical constructs is very
difficult. The performance overhead of static const int is negligible.
2017-08-12 13:16:12 +02:00
Ali H. Fardan 2c114ec2b5
keyboard_indicators: fix segfault when -s is specified 2017-08-12 12:50:11 +02:00
Aaron Marcher 6f01174392
Fixed possible NULL-deref and removed unnecessary XOpenDisplay()
- Added a check for the return value of XOpenDisplay() in main().
  This fixes a possible NULL-deref.
- Removed unnsecessary XOpenDisplay and XCloseDisplay from
  keyboard_indicators(). The ones in main() are sufficent.
2017-08-11 14:33:02 +02:00
Laslo Hunhold 1814061396
Add and use LEN() macro 2017-08-11 13:43:11 +02:00
Laslo Hunhold 178c23e3d2
Refactor battery_state() 2017-08-11 00:20:47 +02:00
Laslo Hunhold 00ce7a746a
Print usage() when we are left with arguments 2017-08-10 22:33:05 +02:00
Laslo Hunhold c9d47405f4
Reduce -o | -n to -s
What we really want is to either output to WM_NAME or stdout. If we want
just one single line, we do slstatus | head -n 1.
2017-08-10 22:32:57 +02:00
Laslo Hunhold 4d33c36014
Remove d- and v-flags
d-flag: There's no need for that, use the &-operator or fork+exec in a
        non-shell-context. In the latter case you get the PID for free.
v-flag: If you want to find out which version of a package is installed,
        consult your package manager. That's his job.
2017-08-10 22:32:48 +02:00
Laslo Hunhold 958c34052a
Convert slstatus.1 to mandoc, simplify it and remove -h
We also change the semantics of -v to only return the version
information.
There is now no need for usage() to exit with anything other than 1.
2017-08-10 22:32:28 +02:00
aaron marcher 4b4b2ac079
add num_files() function for maildirs ;) 2017-08-06 15:02:16 +02:00
Aaron Marcher 1c8aa5318f
check for fgets/fscanf return values 2017-06-13 00:06:56 +02:00
Aaron Marcher 597cdc6b5c
use a static buffer instead of dynamic memory 2017-06-13 00:06:04 +02:00
Aaron Marcher abbaa7af44
remove format characters from stat functions 2017-06-12 23:59:21 +02:00
Aaron Marcher 832b21ca4b
add cpu_freq function 2017-06-12 23:56:21 +02:00
Aaron Marcher 259e967cbf
add battery_power function 2017-06-12 23:55:27 +02:00
Aaron Marcher 870d68d44e
added option to output only once and exit afterwards 2017-05-11 19:06:45 +02:00
Aaron Marcher d144c8de3d
simplified and improved vol_perc() 2017-04-20 22:30:04 +02:00
Aaron Marcher c288663ebd
fix overflow in run_command() 2017-04-20 22:20:19 +02:00
Aaron Marcher b2714032e5
username(): get rid of unneeded uid variable 2017-04-20 22:18:24 +02:00
Tobias Stoeckmann 35295f1902 On success, fgets always terminates the result.
If fgets succeeds, then the resulting char array is always
terminated by a '\0'. No need to keep extra space, therefore
sizeof(buf) is the correct argument.

Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
2017-04-04 21:27:31 +02:00
Tobias Stoeckmann b1e7c40b21 Fixed out of boundary write on long lines.
The terminating nul character ('\0') could be written outside the boundary of
the buffer which is used to read characters. If "sizeof(buffer)" characters
are read, the resulting value must not be used as index, because that's an off
by one.

Read sizeof(buffer)-1 bytes instead.

Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
2017-04-02 13:12:03 +02:00
Aaron Marcher cceeec0efa
loading thresholds state 2017-03-30 17:32:20 +02:00
Aaron Marcher b11dd2db0e
Fixed XCloseDisplay() which is not reached in keyboard_indicators() 2017-01-23 21:01:41 +01:00
Aaron Marcher 823f2d047f
Added keyboard_indicators (Fixes #31) 2017-01-16 12:10:56 +01:00
Aaron Marcher 3f976aabc0
Makefile fix and vol_perc fix for mute 2017-01-09 12:05:29 +01:00
Aaron Marcher 0d1f19d777
removed ./extern/ 2017-01-07 22:33:28 +01:00
Aaron Marcher 688e2e783d
removed strlcat dependency (was used only once) 2017-01-07 22:31:46 +01:00
Aaron Marcher 32bb92453a
got rid of concat.h 2017-01-07 22:01:49 +01:00
Aaron Marcher 3847911771
happy new year! 2017-01-07 21:28:22 +01:00
Aaron Marcher 8a29374783
run_command: strlen() will not function if string is not null terminated 2017-01-07 21:19:40 +01:00
Aaron Marcher 965a71d678
consistent coding style: usage() declaration, eval is a constant 2016-12-30 23:13:21 +01:00
parazyd 13604963bc Merge branch 'master' into master 2016-12-30 14:21:19 +01:00
parazyd 62f4016430
add vol_perc notes, add braces to singleline statements 2016-12-30 12:16:07 +01:00
Aaron Marcher 8fa6229759
why releases for such a small project? useless and overhead! 2016-12-29 23:36:05 +01:00
Aaron Marcher b68925dbef
#undef strlcpy not needed anymore 2016-12-29 23:30:53 +01:00
Aaron Marcher 015f832c3a Merge branch 'master' into master 2016-12-29 23:27:44 +01:00
raiz b231cd90eb add braces to single statements so drkhsh doesn't be upset 2016-12-29 12:40:43 +03:00
Aaron Marcher 7392dbabeb
kernel_release() coding style and position in code fix 2016-12-28 23:59:19 +01:00
parazyd c2808b6d99
refactor vol_perc to not depend on alsa libraries 2016-12-28 00:41:51 +01:00
raiz cfb4a5d3ff usage(): return success if -h is called && print more appropriate usage, opts can't be all called at the same time, that's why a separator is required 2016-12-27 20:41:40 +03:00
raiz e9f738b8b6 whhops, my bad 2016-12-27 20:18:09 +03:00
raiz 94e87eb8ba wifi_essid: add boundary check && prevent the use of direct string literal as a format string in snprintf() 2016-12-27 20:14:45 +03:00
raiz 11fec4fa95 don't allow the use of perc if uninitialized 2016-12-27 20:09:07 +03:00