aboutsummaryrefslogtreecommitdiff
path: root/src/base/bufio/putc.c
blob: e91a1f1538d9fb541659c06d0d46c6de1df01719 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "internal.h"

int
bio·putc(io·Header *io, int c)
{
    intptr i;

    for(;;){
        i = io->olen;
        if(i){
            io->e[i++] = c;
            io->olen = i;
            return 0;
        }
        if(bio·flush(io) == io·BufEof)
            break;
    }
    return io·BufEof;
}