hc_conn_new (int fd, HCClientFunc func, gpointer data)
{
HCConn *conn;
- fcntl (fd, F_SETFL, fcntl (fd, F_GETFL, 0) | O_NONBLOCK);
conn = g_slice_new (HCConn);
conn->channel = g_io_channel_unix_new (fd);
conn->func = func;
conn->watch = g_io_add_watch (conn->channel, G_IO_IN, hc_conn_watch, conn);
if (conn->func)
conn->func (conn, HC_EVENT_CONNECT, conn->data);
+ fcntl (fd, F_SETFL, fcntl (fd, F_GETFL, 0) | O_NONBLOCK);
return conn;
}