asprintf is equivalent to malloc plus snprintf so
use it because it is simpler.

Signed-off-by: Adrian Hunter <adrian.hun...@intel.com>
---
 tools/perf/util/srcline.c | 9 +--------
 1 file changed, 1 insertion(+), 8 deletions(-)

diff --git a/tools/perf/util/srcline.c b/tools/perf/util/srcline.c
index d11aefb..4c8e816 100644
--- a/tools/perf/util/srcline.c
+++ b/tools/perf/util/srcline.c
@@ -227,7 +227,6 @@ char *get_srcline(struct dso *dso, unsigned long addr)
        unsigned line = 0;
        char *srcline;
        char *dso_name = dso->long_name;
-       size_t size;
 
        if (!dso->has_srcline)
                return SRCLINE_UNKNOWN;
@@ -241,13 +240,7 @@ char *get_srcline(struct dso *dso, unsigned long addr)
        if (!addr2line(dso_name, addr, &file, &line))
                goto out;
 
-       /* just calculate actual length */
-       size = snprintf(NULL, 0, "%s:%u", file, line) + 1;
-
-       srcline = malloc(size);
-       if (srcline)
-               snprintf(srcline, size, "%s:%u", file, line);
-       else
+       if (asprintf(&srcline, "%s:%u", file, line) < 0)
                srcline = SRCLINE_UNKNOWN;
 
        free(file);
-- 
1.7.11.7

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to