mirror of
https://github.com/systemd/systemd.git
synced 2024-12-02 23:03:50 +08:00
929f52632b
man/.dir-locals is to keep indentation under control. This makes it much easier to compile and run those examples, c.f. #7578. v2: - copy more of .dir-locals.el from the root to man/.dir-locals.el (I though emacs would inherit from the one in the parent dir, but it seems it just uses its own broken defaults, including indent-tabs-mode by default.)
24 lines
548 B
C
24 lines
548 B
C
#include <poll.h>
|
|
#include <systemd/sd-journal.h>
|
|
|
|
int wait_for_changes(sd_journal *j) {
|
|
struct pollfd pollfd;
|
|
int msec;
|
|
|
|
sd_journal_get_timeout(m, &t);
|
|
if (t == (uint64_t) -1)
|
|
msec = -1;
|
|
else {
|
|
struct timespec ts;
|
|
uint64_t n;
|
|
clock_gettime(CLOCK_MONOTONIC, &ts);
|
|
n = (uint64_t) ts.tv_sec * 1000000 + ts.tv_nsec / 1000;
|
|
msec = t > n ? (int) ((t - n + 999) / 1000) : 0;
|
|
}
|
|
|
|
pollfd.fd = sd_journal_get_fd(j);
|
|
pollfd.events = sd_journal_get_events(j);
|
|
poll(&pollfd, 1, msec);
|
|
return sd_journal_process(j);
|
|
}
|