#define WHITESPACE " \t\n\r"
#define NEWLINE "\n\r"
#define QUOTES "\"\'"
-#define COMMENTS "#;\n"
+#define COMMENTS "#;"
#define FORMAT_BYTES_MAX 8
char *strrep(const char *s, unsigned n);
void* greedy_realloc(void **p, size_t *allocated, size_t need);
+#define GREEDY_REALLOC(array, allocated, need) \
+ greedy_realloc((void**) &(array), &(allocated), (sizeof *array) * (need))
static inline void _reset_errno_(int *saved_errno) {
errno = *saved_errno;
static inline bool logind_running(void) {
return access("/run/systemd/seats/", F_OK) >= 0;
}
+
+static inline unsigned decimal_str_max(unsigned x) {
+ unsigned ans = 1;
+ while (x /= 10)
+ ans ++;
+ return ans;
+}
+
+int unlink_noerrno(const char *path);
+
+#define alloca0(n) \
+ ({ \
+ char *__new; \
+ size_t __len = n; \
+ __new = alloca(__len); \
+ (void *) memset(__new, 0, __len); \
+ })