bputrune.c 305 B

1234567891011121314151617181920212223
  1. #include <u.h>
  2. #include <libc.h>
  3. #include <bio.h>
  4. int
  5. Bputrune(Biobufhdr *bp, long c)
  6. {
  7. Rune rune;
  8. char str[4];
  9. int n;
  10. rune = c;
  11. if(rune < Runeself) {
  12. Bputc(bp, rune);
  13. return 1;
  14. }
  15. n = runetochar(str, &rune);
  16. if(n == 0)
  17. return Bbad;
  18. if(Bwrite(bp, str, n) != n)
  19. return Beof;
  20. return n;
  21. }