Folks--
I believe Edi forwarded a message I'd written about some sort of byte-related encoding problems (or decoding) with regard to SBCL. The problem occurs when I want to serve up an image file as part of, say, a background for a web site.
Does anyone want to focus my attention on any particular files, or areas to envistigate, or should I just leave well enough alone because you all are about ready to update the code?
Edi's comment:
One solution might be to check if SBCL has some kind of default external format which can be used to overwrite the UTF-8 format. I don't use SBCL myself but I seem to remember that this might depend on the value of some environment variable when the image is started. Maybe someone else here knows the details.
Another option would be to treat SBCL like LW and AllegroCL in case it also has bivalent streams.
Since I'm not a developer of TBNL nor do I intend to be, I'm not sure what the above means. Is the problem that TBNL is trying to read a binary file into, uh, characters, or something?
Anyway, I'll see if I can't come up with a hack and then drop it here in case it'll help an expert get a real fix in quicker.
Thanks,
Keith
On Wed, 6 Apr 2005 13:27:37 -0700, Keith Irwin keith.irwin@gmail.com wrote:
Does anyone want to focus my attention on any particular files, or areas to envistigate
How does your environment look like when you start SBCL, i.e. which locale are you using?
Since I'm not a developer of TBNL nor do I intend to be, I'm not sure what the above means. Is the problem that TBNL is trying to read a binary file into, uh, characters, or something?
Yes. See here: http://weitz.de/tbnl/#quirks. The problem is that the stream you want to send the binary data to is a character stream - or at least in the beginning, when the HTTP headers are sent to the browser, it's a character stream.
If you use AllegroCL or LW you can have streams which are "bivalent" - you can send characters /and/ octets to these streams, so no problem. If, on the other hand, you use a Lisp like CMUCL which assumes that all characters have eight bits then you don't have a problem either.
At the time when TBNL was written SBCL behaved like CMUCL so the stuff it's now choking at just worked. Obviously, that's not the case anymore.
Cheers, Edi.