Treat strings returned from primitives as UTF-8 coded.
authorChris Hanson <org/chris-hanson/cph>
Wed, 8 May 2019 06:50:48 +0000 (23:50 -0700)
committerChris Hanson <org/chris-hanson/cph>
Thu, 9 May 2019 02:21:10 +0000 (19:21 -0700)
commit3db1e5b1448589d725aaac12f7c62b4e5e407ba1
tree5bc4979037f3fa290c1a79daba6e8c033d1a37f7
parent1d751d374c221e3d122f9476236ab1c337d1ffa6
Treat strings returned from primitives as UTF-8 coded.

In particular, make sure that filenames are treated this way, because this is
normal for modern unix systems.  This change mostly affects filenames, but also
environment variables and command-line strings.

This is necessary because strings passed to primitives are converted to UTF-8
bytevectors.  Otherwise, a non-ASCII filename returned by a primitive won't be
converted back to the same bytes when passed to another primitive.
src/runtime/command-line.scm
src/runtime/os-primitives.scm
src/runtime/primitive-io.scm
src/runtime/runtime.pkg
src/runtime/savres.scm
src/runtime/sfile.scm
src/runtime/string.scm
src/runtime/unxprm.scm
src/runtime/wrkdir.scm