diff options
| author | Lauri Tirkkonen <lotheac@iki.fi> | 2019-03-13 19:40:52 +0200 |
|---|---|---|
| committer | Hiltjo Posthuma <hiltjo@codemadness.org> | 2019-03-15 12:24:13 +0100 |
| commit | d5efd256aa3840476579a27293ef1fb92a4b51e7 (patch) | |
| tree | c06cbb65210724bb2b654287f49c60e1c2f4fd76 /st.c | |
| parent | be silent about explicitly unhandled mouse modes (diff) | |
| download | st-d5efd256aa3840476579a27293ef1fb92a4b51e7.tar.gz st-d5efd256aa3840476579a27293ef1fb92a4b51e7.zip | |
replace utf8strchr with wcschr
Diffstat (limited to '')
| -rw-r--r-- | st.c | 20 |
1 files changed, 1 insertions, 19 deletions
| @@ -41,7 +41,7 @@ | |||
| 41 | #define ISCONTROLC0(c) (BETWEEN(c, 0, 0x1f) || (c) == '\177') | 41 | #define ISCONTROLC0(c) (BETWEEN(c, 0, 0x1f) || (c) == '\177') |
| 42 | #define ISCONTROLC1(c) (BETWEEN(c, 0x80, 0x9f)) | 42 | #define ISCONTROLC1(c) (BETWEEN(c, 0x80, 0x9f)) |
| 43 | #define ISCONTROL(c) (ISCONTROLC0(c) || ISCONTROLC1(c)) | 43 | #define ISCONTROL(c) (ISCONTROLC0(c) || ISCONTROLC1(c)) |
| 44 | #define ISDELIM(u) (utf8strchr(worddelimiters, u) != NULL) | 44 | #define ISDELIM(u) (u != 0 && wcschr(worddelimiters, u) != NULL) |
| 45 | 45 | ||
| 46 | enum term_mode { | 46 | enum term_mode { |
| 47 | MODE_WRAP = 1 << 0, | 47 | MODE_WRAP = 1 << 0, |
| @@ -210,7 +210,6 @@ static void selsnap(int *, int *, int); | |||
| 210 | static size_t utf8decode(const char *, Rune *, size_t); | 210 | static size_t utf8decode(const char *, Rune *, size_t); |
| 211 | static Rune utf8decodebyte(char, size_t *); | 211 | static Rune utf8decodebyte(char, size_t *); |
| 212 | static char utf8encodebyte(Rune, size_t); | 212 | static char utf8encodebyte(Rune, size_t); |
| 213 | static char *utf8strchr(char *, Rune); | ||
| 214 | static size_t utf8validate(Rune *, size_t); | 213 | static size_t utf8validate(Rune *, size_t); |
| 215 | 214 | ||
| 216 | static char *base64dec(const char *); | 215 | static char *base64dec(const char *); |
| @@ -337,23 +336,6 @@ utf8encodebyte(Rune u, size_t i) | |||
| 337 | return utfbyte[i] | (u & ~utfmask[i]); | 336 | return utfbyte[i] | (u & ~utfmask[i]); |
| 338 | } | 337 | } |
| 339 | 338 | ||
| 340 | char * | ||
| 341 | utf8strchr(char *s, Rune u) | ||
| 342 | { | ||
| 343 | Rune r; | ||
| 344 | size_t i, j, len; | ||
| 345 | |||
| 346 | len = strlen(s); | ||
| 347 | for (i = 0, j = 0; i < len; i += j) { | ||
| 348 | if (!(j = utf8decode(&s[i], &r, len - i))) | ||
| 349 | break; | ||
| 350 | if (r == u) | ||
| 351 | return &(s[i]); | ||
| 352 | } | ||
| 353 | |||
| 354 | return NULL; | ||
| 355 | } | ||
| 356 | |||
| 357 | size_t | 339 | size_t |
| 358 | utf8validate(Rune *u, size_t i) | 340 | utf8validate(Rune *u, size_t i) |
| 359 | { | 341 | { |
