Peter Wehrfritz wrote:
> Enlightenment SVN wrote:
>> Log:
>> Add eina_strbuf_reset
>>
>> Function to reset the internal string, so we can reuse the allocated
>> mem.
>> Author: englebass
>> Date: 2010-02-06 13:43:22 -0800 (Sat, 06 Feb 2010)
>> New Revision: 45952
>>
>> Modified:
>> trunk/eina/src/include/eina_strbuf.h trunk/eina/src/lib/eina_strbuf.c
>>
>> Modified: trunk/eina/src/include/eina_strbuf.h
>> ===================================================================
>> --- trunk/eina/src/include/eina_strbuf.h 2010-02-06 21:43:12 UTC (rev
>> 45951)
>> +++ trunk/eina/src/include/eina_strbuf.h 2010-02-06 21:43:22 UTC (rev
>> 45952)
>> @@ -9,6 +9,7 @@
>>
>> EAPI Eina_Strbuf *eina_strbuf_new(void);
>> EAPI void eina_strbuf_free(Eina_Strbuf *buf) EINA_ARG_NONNULL(1);
>> +EAPI void eina_strbuf_reset(Eina_Strbuf *buf) EINA_ARG_NONNULL(1);
>> EAPI void eina_strbuf_append(Eina_Strbuf *buf, const char *str)
>> EINA_ARG_NONNULL(1, 2);
>> EAPI void eina_strbuf_append_escaped(Eina_Strbuf *buf, const char *str)
>> EINA_ARG_NONNULL(1, 2);
>> EAPI void eina_strbuf_append_n(Eina_Strbuf *buf, const char *str, unsigned
>> int maxlen) EINA_ARG_NONNULL(1, 2);
>>
>> Modified: trunk/eina/src/lib/eina_strbuf.c
>> ===================================================================
>> --- trunk/eina/src/lib/eina_strbuf.c 2010-02-06 21:43:12 UTC (rev 45951)
>> +++ trunk/eina/src/lib/eina_strbuf.c 2010-02-06 21:43:22 UTC (rev 45952)
>> @@ -86,6 +86,23 @@
>> }
>>
>> /**
>> + * Reset a string buffer
>> + * @param buf the buffer to reset
>> + *
>> + * The buffer len is set to 0, no mem is free'd
>> + */
>> +EAPI void
>> +eina_strbuf_reset(Eina_Strbuf *buf)
>> +{
>> + EINA_MAGIC_CHECK_STRBUF(buf);
>> + buf->len = 0;
>> + buf->size = EINA_STRBUF_INIT_SIZE;
>> + buf->step = EINA_STRBUF_INIT_STEP;
>> +
>> + buf->buf[0] = '\0';
>> +}
>>
>
> If you don't change the actual buffer size, i.e. you are using realloc,
> you shouldn't change the saved buf->size.
Thanks, fixed.
Sebastian
------------------------------------------------------------------------------
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel