From: Doug Coleman Date: Thu, 22 Feb 2024 03:19:33 +0000 (-0600) Subject: io.encodings.string: ensure encoded string is a byte-array X-Git-Url: https://gitweb.factorcode.org/gitweb.cgi?p=factor.git;a=commitdiff_plain;h=6cb92a4870e00b0d99fb8e1aa0af6f5c9ac07caa io.encodings.string: ensure encoded string is a byte-array --- diff --git a/basis/io/encodings/string/string-tests.factor b/basis/io/encodings/string/string-tests.factor index 62f65e5c3e..0acd7bd6ec 100644 --- a/basis/io/encodings/string/string-tests.factor +++ b/basis/io/encodings/string/string-tests.factor @@ -9,3 +9,6 @@ io.encodings.string tools.test io.encodings.binary ; { "hello" } [ "hello" utf8 encode >string ] unit-test { "\0h\0e" } [ "he" utf16be encode >string ] unit-test + +{ B{ 97 98 99 } } [ "abc" binary encode ] unit-test +{ B{ 97 98 99 } } [ "abc" utf8 encode ] unit-test diff --git a/basis/io/encodings/string/string.factor b/basis/io/encodings/string/string.factor index b62ef9aa18..4b5d3067bf 100644 --- a/basis/io/encodings/string/string.factor +++ b/basis/io/encodings/string/string.factor @@ -19,7 +19,7 @@ IN: io.encodings.string ] if ; inline :: encode ( string encoding -- byte-array ) - encoding binary eq? [ string ] [ + encoding binary eq? [ string B{ } like ] [ string aux>> not encoding { ascii utf8 } member-eq? and [ string string>byte-array-fast ] [