From e93136ef0fac69b4bb7f02ba7e3b348827d597ea Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Thu, 1 Jan 2009 18:47:25 +0100 Subject: event_pipe: added event_pipe_emit_fast() event_pipe_emit_fast() is aimed for use in signal handlers: it doesn't lock the mutex, and doesn't log on error. That makes it potentially lossy, but for its intended use, that does not matter. --- src/event_pipe.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/event_pipe.c') diff --git a/src/event_pipe.c b/src/event_pipe.c index 44890341..318e59df 100644 --- a/src/event_pipe.c +++ b/src/event_pipe.c @@ -137,6 +137,14 @@ void event_pipe_emit(enum pipe_event event) g_error("error writing to pipe: %s", strerror(errno)); } +void event_pipe_emit_fast(enum pipe_event event) +{ + assert((unsigned)event < PIPE_EVENT_MAX); + + pipe_events[event] = true; + write(event_pipe[1], "", 1); +} + void event_pipe_signal(void) { event_pipe_emit(PIPE_EVENT_SIGNAL); -- cgit v1.2.3