#include <pulsecore/socket.h>
#include <pulsecore/core-error.h>
+#include <pulsecore/core-util.h>
#include <pulsecore/log.h>
#include <pulsecore/macro.h>
#include <pulsecore/refcnt.h>
pa_ioline_drain_cb_t drain_callback;
void *drain_userdata;
- pa_bool_t dead:1;
- pa_bool_t defer_close:1;
+ bool dead:1;
+ bool defer_close:1;
};
static void io_callback(pa_iochannel*io, void *userdata);
l->defer_event = l->mainloop->defer_new(l->mainloop, defer_callback, l);
l->mainloop->defer_enable(l->defer_event, 0);
- l->dead = FALSE;
- l->defer_close = FALSE;
+ l->dead = false;
+ l->defer_close = false;
pa_iochannel_set_callback(io, io_callback, l);
pa_assert(l);
pa_assert(PA_REFCNT_VALUE(l) >= 1);
- l->dead = TRUE;
+ l->dead = true;
if (l->io) {
pa_iochannel_free(l->io);
l->drain_userdata = userdata;
}
-static void failure(pa_ioline *l, pa_bool_t process_leftover) {
+static void failure(pa_ioline *l, bool process_leftover) {
pa_assert(l);
pa_assert(PA_REFCNT_VALUE(l) >= 1);
pa_assert(!l->dead);
if (r < 0 && errno != ECONNRESET) {
pa_log("read(): %s", pa_cstrerror(errno));
- failure(l, FALSE);
+ failure(l, false);
} else
- failure(l, TRUE);
+ failure(l, true);
return -1;
}
while (l->io && !l->dead && pa_iochannel_is_writable(l->io) && l->wbuf_valid_length > 0) {
- if ((r = pa_iochannel_write(l->io, l->wbuf+l->wbuf_index, l->wbuf_valid_length)) <= 0) {
+ if ((r = pa_iochannel_write(l->io, l->wbuf+l->wbuf_index, l->wbuf_valid_length)) < 0) {
- if (r < 0 && errno == EAGAIN)
- break;
-
- if (r < 0 && errno != EPIPE)
+ if (errno != EPIPE)
pa_log("write(): %s", pa_cstrerror(errno));
- failure(l, FALSE);
+ failure(l, false);
return -1;
}
do_write(l);
if (l->defer_close && !l->wbuf_valid_length)
- failure(l, TRUE);
+ failure(l, true);
pa_ioline_unref(l);
}
pa_assert(l);
pa_assert(PA_REFCNT_VALUE(l) >= 1);
- l->defer_close = TRUE;
+ l->defer_close = true;
if (!l->wbuf_valid_length)
l->mainloop->defer_enable(l->defer_event, 1);
return r;
}
-pa_bool_t pa_ioline_is_drained(pa_ioline *l) {
+bool pa_ioline_is_drained(pa_ioline *l) {
pa_assert(l);
return l->wbuf_valid_length <= 0;