| bputrune.c - 9base - revived minimalist port of Plan 9 userland to Unix | |
| git clone git://git.suckless.org/9base | |
| Log | |
| Files | |
| Refs | |
| README | |
| LICENSE | |
| --- | |
| bputrune.c (309B) | |
| --- | |
| 1 #include "lib9.h" | |
| 2 #include <bio.h> | |
| 3 #include <utf.h> | |
| 4 | |
| 5 int | |
| 6 Bputrune(Biobuf *bp, long c) | |
| 7 { | |
| 8 Rune rune; | |
| 9 char str[UTFmax]; | |
| 10 int n; | |
| 11 | |
| 12 rune = c; | |
| 13 if(rune < Runeself) { | |
| 14 Bputc(bp, rune); | |
| 15 return 1; | |
| 16 } | |
| 17 n = runetochar(str, &rune); | |
| 18 if(n == 0) | |
| 19 return Bbad; | |
| 20 if(Bwrite(bp, str, n) != n) | |
| 21 return Beof; | |
| 22 return n; | |
| 23 } |