From 50140c4a0c76015f8ac5e653134fe70127f0a788 Mon Sep 17 00:00:00 2001 From: Shilpa Singh Date: Tue, 3 Nov 2015 14:01:51 -0800 Subject: [PATCH] eina: add eina_tmpstr_manage_new, eina_tmpstr_manage_new_length APIs Summary: Add eina_tmpstr_manage_new, eina_tmpstr_manage_new_length APIs, these APIs create new tmpstr but reuse the input string memory. @feature Test Plan: Test case and example updated Reviewers: tasn, cedric Reviewed By: cedric Differential Revision: https://phab.enlightenment.org/D3178 Signed-off-by: Cedric BAIL --- unsorted/eina/eina_tmpstr_01.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/unsorted/eina/eina_tmpstr_01.c b/unsorted/eina/eina_tmpstr_01.c index 36d8c626..68158ca2 100644 --- a/unsorted/eina/eina_tmpstr_01.c +++ b/unsorted/eina/eina_tmpstr_01.c @@ -8,6 +8,9 @@ int main(int argc EINA_UNUSED, char **argv EINA_UNUSED) { const char *str; + char *str2; + const char *str3; + int len; const char *prologe = "The Cylons were created by man. They rebelled. They " "evolved."; @@ -15,9 +18,18 @@ main(int argc EINA_UNUSED, char **argv EINA_UNUSED) str = eina_tmpstr_add_length(prologe, 31); printf("%s\n", str); - printf("length: %d\n", eina_tmpstr_len(str)); + len = eina_tmpstr_len(str); + printf("length: %d\n", len); eina_tmpstr_del(str); + str2 = (char *)calloc(61, sizeof(char)); + strcpy(str2, prologe); + str3 = eina_tmpstr_manage_new(str2); + printf("%s\n", str3); + len = eina_tmpstr_len(str3); + printf("length: %d\n", len); + eina_tmpstr_del(str3); + eina_shutdown(); return 0;