events->on_fd(events, ch->fd, OOP_WRITE, writeable, ch);
LIST_LINK_TAIL(ch->obs, ob);
ch->total += ob->l;
- obc_tryflush(ch);
+ if (ob->l>0 && ob->m[ob->l-1]=='\n')
+ obc_tryflush(ch);
if (ch->total > ch->limit) {
char what[128];
snprintf(what,sizeof(what)-1,"`%.*s...'", ob->l,ob->m);