Mike Gran <spk...@yahoo.com> wrote:
>> Right now it seems that zero-length shared substring of a wide string is
>> wide.  A zero-length substring still shares the stringbuf of the
>> original string.
> [...]
>> What do you think about that?  Do zero-length substrings need to
>> still share stringbufs with their parent strings?

I wrote:
> I think the answer is: no they don't, and avoiding that might be a
> worthwhile optimization, mainly to avoid needlessly holding a reference
> to a potentially large stringbuf.

I went ahead and committed this optimization.  Empty substrings are now
always freshly allocated, and never hold a reference to the original
stringbuf.

I also added another optimization: `scm_i_make_string' now uses a common
null_stringbuf when creating empty strings.  The string object itself is
still freshly allocated.

    Mark

Reply via email to