From d8edf7bfff53c3979c84531ac5d6efd38c510f34 Mon Sep 17 00:00:00 2001 From: Markus Triska Date: Wed, 3 May 2023 23:23:53 +0200 Subject: [PATCH] FIXED: consistent read/write of further control characters, and non-breaking space Example: ?- X = '\xa0\'. X = '\xa0\'. This addresses #1768. --- src/heap_print.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/heap_print.rs b/src/heap_print.rs index 54f52cd6c..d05e84558 100644 --- a/src/heap_print.rs +++ b/src/heap_print.rs @@ -172,7 +172,9 @@ fn char_to_string(is_quoted: bool, c: char) -> String { '\'' | '\n' | '\r' | '\t' | '\u{0b}' | '\u{0c}' | '\u{08}' | '\u{07}' | '"' | '\\' => { c.to_string() } - '\u{0}'..='\u{1f}' => format!("\\x{:x}\\", c as u32), // print all other control characters in hex. + '\u{0}'..='\u{1f}' | '\u{7f}' ..= '\u{a0}' + // print all other control characters, and also non-breaking space, in hex. + => format!("\\x{:x}\\", c as u32), _ => c.to_string(), } }