From ede5ac01f672dc36ed3d000312a3610c5a6671e5 Mon Sep 17 00:00:00 2001 From: Sebastian Dransfeld Date: Thu, 1 Apr 2010 19:32:19 +0000 Subject: [PATCH] efreet: remove strdup, use alloca SVN revision: 47662 --- legacy/efreet/src/lib/efreet_desktop.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/legacy/efreet/src/lib/efreet_desktop.c b/legacy/efreet/src/lib/efreet_desktop.c index 2cb0b5f14a..255f795419 100644 --- a/legacy/efreet/src/lib/efreet_desktop.c +++ b/legacy/efreet/src/lib/efreet_desktop.c @@ -1930,7 +1930,11 @@ efreet_desktop_command_file_uri_process(const char *uri) { char *tmp, *p; char hostname[PATH_MAX]; - tmp = strdup(uri + 7); + size_t len2; + + len2 = strlen(uri + 7) + 1; + tmp = alloca(len2); + memcpy(tmp, uri + 7, len2); p = strchr(tmp, '/'); if (p) { @@ -1946,7 +1950,6 @@ efreet_desktop_command_file_uri_process(const char *uri) path = uri + strlen("file://") + strlen(hostname); } } - free(tmp); } /* uri:///foo/bar => absolute path /foo/bar on local machine */