ifixed functions declarations - iomenu - interactive terminal-based selection menu Err bitreich.org 70 hgit clone git://bitreich.org/iomenu git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/iomenu URL:git://bitreich.org/iomenu git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/iomenu bitreich.org 70 1Log /scm/iomenu/log.gph bitreich.org 70 1Files /scm/iomenu/files.gph bitreich.org 70 1Refs /scm/iomenu/refs.gph bitreich.org 70 1Tags /scm/iomenu/tag bitreich.org 70 1README /scm/iomenu/file/README.gph bitreich.org 70 1LICENSE /scm/iomenu/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit 1a93ead7868deeeb790f1382615f5bd20d5033fc /scm/iomenu/commit/1a93ead7868deeeb790f1382615f5bd20d5033fc.gph bitreich.org 70 1parent d039d19d82cc89665d453180d25007bf2329c3e6 /scm/iomenu/commit/d039d19d82cc89665d453180d25007bf2329c3e6.gph bitreich.org 70 hAuthor: Josuah Demangeonā  ā µ URL:mailto:mail@josuah.net bitreich.org 70 iDate: Tue, 4 Apr 2017 00:19:57 +0200 Err bitreich.org 70 i Err bitreich.org 70 ifixed functions declarations Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M utf.c | 17 +++++++++-------- Err bitreich.org 70 i M utf.h | 14 ++++++++------ Err bitreich.org 70 i Err bitreich.org 70 i2 files changed, 17 insertions(+), 14 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/utf.c b/utf.c /scm/iomenu/file/utf.c.gph bitreich.org 70 i@@ -119,14 +119,14 @@ utftorune(long *r, char *s, int n) Err bitreich.org 70 i * Return the length of `i`. Err bitreich.org 70 i */ Err bitreich.org 70 i size_t Err bitreich.org 70 i-utftorunes(long *runev, char *utf, size_t n) Err bitreich.org 70 i+utftorunes(long *runes, char *utf, size_t n) Err bitreich.org 70 i { Err bitreich.org 70 i size_t i, j; Err bitreich.org 70 i Err bitreich.org 70 i for (i = 0, j = 0; n > 0; i++) Err bitreich.org 70 i- j += utftorune(runev + i, utf[j], n - j); Err bitreich.org 70 i+ j += utftorune(runes + i, utf + j, n - j); Err bitreich.org 70 i Err bitreich.org 70 i- runev[i] = '\0'; Err bitreich.org 70 i+ runes[i] = '\0'; Err bitreich.org 70 i return i; Err bitreich.org 70 i } Err bitreich.org 70 i Err bitreich.org 70 i@@ -200,7 +200,7 @@ runetoprint(char *s, long r) Err bitreich.org 70 i } else if (r == 0x7f || r < ' ') { Err bitreich.org 70 i return sprintf(s, "[%02lx]", r); Err bitreich.org 70 i Err bitreich.org 70 i- } else if (!isprintrune(r)) { Err bitreich.org 70 i+ } else if (!runeisprint(r)) { Err bitreich.org 70 i return sprintf(s, "[%04lx]", r); Err bitreich.org 70 i Err bitreich.org 70 i } else { Err bitreich.org 70 i@@ -219,10 +219,11 @@ runetoprint(char *s, long r) Err bitreich.org 70 i * Returns 1 if the rune is a printable character and 0 if not. Err bitreich.org 70 i */ Err bitreich.org 70 i int Err bitreich.org 70 i-isprintrune(long r) Err bitreich.org 70 i+runeisprint(long r) Err bitreich.org 70 i { Err bitreich.org 70 i return !( Err bitreich.org 70 i- (r < ' ' || r == 0x7f) || /* ascii control */ Err bitreich.org 70 i+ (r != '\t' && r < ' ') || /* ascii control */ Err bitreich.org 70 i+ (r == 0x7f) || Err bitreich.org 70 i Err bitreich.org 70 i (0x80 <= r && r < 0xa0) || /* unicode control */ Err bitreich.org 70 i Err bitreich.org 70 i@@ -267,7 +268,7 @@ getrunes(long **r, FILE *f) Err bitreich.org 70 i (*r)[rlen] = '\0'; Err bitreich.org 70 i Err bitreich.org 70 i free(s); Err bitreich.org 70 i- return feof(f) ? -1 : rlen; Err bitreich.org 70 i+ if (feof(f)) return -1; else return rlen; Err bitreich.org 70 i } Err bitreich.org 70 i Err bitreich.org 70 i Err bitreich.org 70 i@@ -317,7 +318,7 @@ main() Err bitreich.org 70 i long *r; Err bitreich.org 70 i int len, i; Err bitreich.org 70 i Err bitreich.org 70 i- for (len = 0; (len = getutf(&r, stdin)) >= 0 && !feof(stdin); free(r)) { Err bitreich.org 70 i+ for (len = 0; (len = getrunes(&r, stdin)) >= 0 && !feof(stdin); free(r)) { Err bitreich.org 70 i for (i = 0; i < len; i++) { Err bitreich.org 70 i runetoprint(s, r[i]); Err bitreich.org 70 i fputs(s, stdout); Err bitreich.org 70 1diff --git a/utf.h b/utf.h /scm/iomenu/file/utf.h.gph bitreich.org 70 i@@ -1,16 +1,18 @@ Err bitreich.org 70 i-/* rune / utf length */ Err bitreich.org 70 i+/* lengths */ Err bitreich.org 70 i int utflen(char *, int); Err bitreich.org 70 i int runelen(long); Err bitreich.org 70 i Err bitreich.org 70 i-/* conversion */ Err bitreich.org 70 i+/* conversions */ Err bitreich.org 70 i+int utftorune(long *, char *, int); Err bitreich.org 70 i int utftorune(long *, char *, int); Err bitreich.org 70 i int runetoutf(char *, long); Err bitreich.org 70 i int runetoprint(char *, long); Err bitreich.org 70 i Err bitreich.org 70 i-/* input/output */ Err bitreich.org 70 i- Err bitreich.org 70 i-size_t getutf(long **, FILE *); Err bitreich.org 70 i Err bitreich.org 70 i /* standard library */ Err bitreich.org 70 i+ Err bitreich.org 70 i int runeisprint(long); Err bitreich.org 70 i-long *runestrcpy(); Err bitreich.org 70 i+size_t getrunes(long **, FILE *); Err bitreich.org 70 i+long * runescpy(long *, long *); Err bitreich.org 70 i+long * runeschr(long *, long); Err bitreich.org 70 i+long * runescat(long *, long *); Err bitreich.org 70 .