• Paul Eggert's avatar
    Improve performance when a string's byte count changes · c1b6d5c5
    Paul Eggert authored
    * src/alloc.c (allocate_string_data): Now static.
    Remove code for when Faset calls this function when S
    already has data assigned, as that can no longer happen.
    (resize_string_data): New function, which avoids relocation in
    more cases than the old code did, by not bothering to relocate
    when the size changes falls within the alignment slop.
    * src/data.c (Faset): Use resize_string_data.
    Change a while to a do-while since it must iterate at least once.
data.c 113 KB