mirror of
https://github.com/clearlinux/systemd-stable.git
synced 2026-09-06 21:51:37 +00:00
utf8: minor simplifications
This commit is contained in:
+4
-4
@@ -142,19 +142,19 @@ int utf8_encoded_to_unichar(const char *str) {
|
||||
}
|
||||
|
||||
bool utf8_is_printable_newline(const char* str, size_t length, bool newline) {
|
||||
const uint8_t *p;
|
||||
const char *p;
|
||||
|
||||
assert(str);
|
||||
|
||||
for (p = (const uint8_t*) str; length;) {
|
||||
for (p = str; length;) {
|
||||
int encoded_len, val;
|
||||
|
||||
encoded_len = utf8_encoded_valid_unichar((const char *) p);
|
||||
encoded_len = utf8_encoded_valid_unichar(p);
|
||||
if (encoded_len < 0 ||
|
||||
(size_t) encoded_len > length)
|
||||
return false;
|
||||
|
||||
val = utf8_encoded_to_unichar((const char*) p);
|
||||
val = utf8_encoded_to_unichar(p);
|
||||
if (val < 0 ||
|
||||
is_unicode_control(val) ||
|
||||
(!newline && val == '\n'))
|
||||
|
||||
+4
-5
@@ -29,13 +29,12 @@
|
||||
|
||||
const char *utf8_is_valid(const char *s) _pure_;
|
||||
char *ascii_is_valid(const char *s) _pure_;
|
||||
char *utf8_escape_invalid(const char *s);
|
||||
char *utf8_escape_non_printable(const char *str);
|
||||
|
||||
bool utf8_is_printable_newline(const char* str, size_t length, bool newline) _pure_;
|
||||
_pure_ static inline bool utf8_is_printable(const char* str, size_t length) {
|
||||
return utf8_is_printable_newline(str, length, true);
|
||||
}
|
||||
#define utf8_is_printable(str, length) utf8_is_printable_newline(str, length, true)
|
||||
|
||||
char *utf8_escape_invalid(const char *s);
|
||||
char *utf8_escape_non_printable(const char *str);
|
||||
|
||||
char *utf16_to_utf8(const void *s, size_t length);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user