From a4e20e95c792f8be2da87328f187685f3359f15e Mon Sep 17 00:00:00 2001 From: DavidVB10 Date: Thu, 22 Oct 2026 21:09:38 +0200 Subject: [PATCH] docs: document control codepoints correctly The previous documentation did not correctly exclude 127 (DEL) and the C1 control character range 128-159 from the control codepoints. However, the function unichar_is_control() defined on src/basic/utf8.c includes the range 0x7F (i.e. 127) to 0x9F (i.e. 159) as control codepoints. This commit explicitly documents the 127-159 range as control. Fixes #44202. (cherry picked from commit db16b6c8ec6965c6cc0236a2c1d2d7e19a009cdc) (cherry picked from commit 1e9a5b1522372fa94af9540938ac665f9b5af4e1) --- docs/JOURNAL_EXPORT_FORMATS.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/JOURNAL_EXPORT_FORMATS.md b/docs/JOURNAL_EXPORT_FORMATS.md index 3c39782564d..378d8d543fb 100644 --- a/docs/JOURNAL_EXPORT_FORMATS.md +++ b/docs/JOURNAL_EXPORT_FORMATS.md @@ -23,7 +23,8 @@ The format is like this: * Journal fields consisting only of valid non-control UTF-8 codepoints are serialized as they are (i.e. the field name, followed by '=', followed by field data), followed by a newline as separator to the next field. Note that fields containing newlines cannot be formatted like this. - Non-control UTF-8 codepoints are the codepoints with value at or above 32 (' '), or equal to 9 (TAB). + Non-control UTF-8 codepoints are the codepoints with value equal to 9 (TAB), or greater than or equal to 32 (' '), + excluding 127 (DEL) and the range 128-159 of C1 control codepoints. * Other journal fields are serialized in a special binary safe way: field name, followed by newline, followed by a binary 64-bit little endian size value, followed by the binary field data, followed by a newline as separator to the next field. * Entry metadata that is not actually a field is serialized like it was a field, but beginning with two underscores.