summaryrefslogtreecommitdiff
path: root/libguile
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2019-05-01 05:20:36 -0400
committerMark H Weaver <mhw@netris.org>2019-05-07 04:41:15 -0400
commit91b5b1631f87067a63cb0b50df5dbfce977c18c7 (patch)
treeb09f1b978087e509d1d6490c4f491d62a0a48610 /libguile
parent5b42fd80d7765953c472ffc002351e04cc307bad (diff)
put-u8: Always write a single byte, regardless of the port encoding.
Previously, 'put-u8' used textual I/O to write a single character, relying on the usual practice of setting the port encoding to ISO-8859-1 for binary ports. * libguile/r6rs-ports.c (scm_put_u8): Use 'scm_c_write', not 'scm_putc'.
Diffstat (limited to 'libguile')
-rw-r--r--libguile/r6rs-ports.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libguile/r6rs-ports.c b/libguile/r6rs-ports.c
index c1cbbdf30..16c148090 100644
--- a/libguile/r6rs-ports.c
+++ b/libguile/r6rs-ports.c
@@ -570,7 +570,7 @@ SCM_DEFINE (scm_put_u8, "put-u8", 2, 0, 0,
SCM_VALIDATE_BINARY_OUTPUT_PORT (1, port);
c_octet = scm_to_uint8 (octet);
- scm_putc ((char) c_octet, port);
+ scm_c_write (port, &c_octet, 1);
return SCM_UNSPECIFIED;
}