Right. I just committed (locally) a fix for mhshow. I looked
at other uses and they look OK. It turns out that other callers
(get_charset(), write_charset_8bit()) pass along the result of
norm_charmap(). Fixing every caller will be invasive.
Thinking about it ... I think your fix is right. We should just document
that the return value of those functions is only valid until the next call
to any of those functions.
Actually, I just realized .... check_charset() and write_charset_8bit() both
save the pointer returned from get_charset() (which calls norm_charmap()).
Those interfaces are broken as designed. Seems like the right solution there
would be to have get_charset() copy the return value from norm_charmap()
into it's own buffer? That could be statically allocated, since it shouldn't
change between calls.
--Ken
_______________________________________________
Nmh-workers mailing list
Nmh-workers(_at_)nongnu(_dot_)org
https://lists.nongnu.org/mailman/listinfo/nmh-workers