Bruce Korb <bk...@gnu.org> writes: > scm_from_locale_stringn() makes an optimization when the length is zero. > It returns an immutable string of length zero.
Good catch! > Two possible fixes: > > 1. remove the "optimization" > 2. check the length in scm_string_upcase_x before choking. I see a third possible fix, which I think I like best: 3. Make scm_nullstr into a mutable string. After all, it can't be changed anyway, and the _only_ reference to it is from scm_from_stringn, so the result should always be mutable. What do other people think? Mark