Add shrink buffer code

SVN revision: 45946
This commit is contained in:
Sebastian Dransfeld 2010-02-06 20:42:14 +00:00
parent f99d9ccf4b
commit da1b1ee801
1 changed files with 10 additions and 4 deletions

View File

@ -425,15 +425,21 @@ _eina_strbuf_resize(Eina_Strbuf *buf, size_t size)
new_size += new_step;
if (new_step < EINA_STRBUF_MAX_STEP)
new_step *= 2;
if (new_step > EINA_STRBUF_MAX_STEP)
new_step = EINA_STRBUF_MAX_STEP;
}
}
else
{
/* shrink the buffer */
/*
* to be done
*/
return 1;
while (new_size - new_step > size)
{
new_size -= new_step;
if (new_step > EINA_STRBUF_INIT_STEP)
new_step /= 2;
if (new_step < EINA_STRBUF_INIT_STEP)
new_step = EINA_STRBUF_INIT_STEP;
}
}
/* reallocate the buffer to the new size */