summaryrefslogtreecommitdiff
path: root/util.c
AgeCommit message (Collapse)Author
2018-05-19Implement esnprintf() and make formatted calls more efficientLaslo Hunhold
Within the components, snprintf() was unchecked and had inefficient calls in some places. We implement esnprintf() that does all the dirty laundry for us and use it exclusively now.
2018-05-18Add fmt_scaled util functionAaron Marcher
2018-05-18Add warn() and die()Laslo Hunhold
Given slstatus is a tool that runs in the background, most likely run from .xinitrc, it's important to prepend the name of the tool to error messages so it becomes clear where the error is coming from. To make this much more consistent, this commit adds warn() and die() utility functions consistent with other suckless projects and adapts all calls to fprintf(stderr, *) to the warn() and die() functions, greatly increasing the readability of the code.
2018-05-17Properly handle *snprintf() errorsLaslo Hunhold
Posix guarantees that the resulting string is null-terminated, even if we have an overflow. Instead of doing what has already been done, properly warn when there has been an error or overflow, so the user can do something about it.
2018-05-06Fix coding styleAaron Marcher
- Use block for single statement ifs - Keep lines to reasonable length (current debate as to reasonable) - When functions return -1 for error test against 0 not -1 - Do not indent cases another level - Do not test against NULL and 0 explicitly - Use tabs for indentation, use spaces for alignment
2018-03-28Format error messages properlyAaron Marcher
Make use of strerror(errno) and format all errors equally: function ['parameters']: error message
2018-03-28Get rid of err.h as it is not portableAaron Marcher
Replace warn() and warnx() with fprintf() and add <stdio.h> where necessary.
2017-09-17Added LICENSE statements to all source filesAaron Marcher
2017-09-17Split into multiple filesAaron Marcher
For multiple reasons the program is now split: - Make future porting to OpenBSD easier - Assign header includes to individiual functions - Make future program extensions easier - Recompile only changed parts