GNU bug report logs -
#20822
environment mangled by locale
Previous Next
Full log
View this message in rfc822 format
On Tue 16 Jun 2015 06:17, Zefram <zefram <at> fysh.org> writes:
> When guile-2.0 is asked to read environment variables, via getenv,
> it always decodes the underlying octet string according to the current
> locale's nominal character encoding. This is a problem, because the
> environment variable's value is not necessarily encoded that way, and
> may not even be an encoding of a character string at all. The decoding
> is lossy, where the octet string isn't consistent with the character
> encoding, so the original octet string cannot be recovered from the
> mangled form. I don't see any Scheme interface that retrieves the
> environment without locale decoding.
Options:
Add optional "encoding" arg to scm_getenv; encoding is a string
Add alternate getenv interface that returns a bytevector
We'll have to do the same for setenv too, I think.
I think I would go with adding an encoding argument to getenv. WDYT
Mark and Ludovic?
Andy
This bug report was last modified 8 years and 355 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.