summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Kastrup <dak@gnu.org>2013-08-06 18:01:54 -0400
committerMark H Weaver <mhw@netris.org>2013-08-06 18:01:54 -0400
commitb4a099883d20d7852c95acf07ab6cbc56bce18c4 (patch)
tree9b0242772f6e268720723bd3db97ecdf5a1009d0
parent524140436fc03ee439d5c358c8c7a4c2c559684a (diff)
downloadguile-b4a099883d20d7852c95acf07ab6cbc56bce18c4.tar.gz
Fix display of symbols containing backslashes.
Fixes <http://bugs.gnu.org/15033>. * libguile/print.c (print_extended_symbol): Double print backslashes. Signed-off-by: Mark H Weaver <mhw@netris.org>
-rw-r--r--libguile/print.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libguile/print.c b/libguile/print.c
index fa8499024..4e68fd6c4 100644
--- a/libguile/print.c
+++ b/libguile/print.c
@@ -410,7 +410,8 @@ print_extended_symbol (SCM sym, SCM port)
SUBSEQUENT_IDENTIFIER_MASK
| UC_CATEGORY_MASK_Zs))
{
- if (!display_character (c, port, strategy))
+ if (!display_character (c, port, strategy)
+ || (c == '\\' && !display_character (c, port, strategy)))
scm_encoding_error ("print_extended_symbol", errno,
"cannot convert to output locale",
port, SCM_MAKE_CHAR (c));