perf scripting: Avoid leaking the scripting_context variable
[pandora-kernel.git] / tools / perf / util / header.c
index bcd05d0..7a75ecb 100644 (file)
@@ -388,7 +388,7 @@ static int write_event_desc(int fd, struct perf_header *h __used,
                /*
                 * write event string as passed on cmdline
                 */
-               ret = do_write_string(fd, attr->name);
+               ret = do_write_string(fd, event_name(attr));
                if (ret < 0)
                        return ret;
                /*
@@ -796,25 +796,19 @@ static void print_cpudesc(struct perf_header *ph, int fd, FILE *fp)
 static void print_nrcpus(struct perf_header *ph, int fd, FILE *fp)
 {
        ssize_t ret;
-       u32 nr;
+       u32 nr[2];
 
        ret = read(fd, &nr, sizeof(nr));
        if (ret != (ssize_t)sizeof(nr))
-               nr = -1; /* interpreted as error */
+               nr[0] = nr[1] = -1; /* interpreted as error */
 
-       if (ph->needs_swap)
-               nr = bswap_32(nr);
-
-       fprintf(fp, "# nrcpus online : %u\n", nr);
-
-       ret = read(fd, &nr, sizeof(nr));
-       if (ret != (ssize_t)sizeof(nr))
-               nr = -1; /* interpreted as error */
-
-       if (ph->needs_swap)
-               nr = bswap_32(nr);
+       if (ph->needs_swap) {
+               nr[0] = bswap_32(nr[0]);
+               nr[1] = bswap_32(nr[1]);
+       }
 
-       fprintf(fp, "# nrcpus avail : %u\n", nr);
+       fprintf(fp, "# nrcpus online : %u\n", nr[1]);
+       fprintf(fp, "# nrcpus avail : %u\n", nr[0]);
 }
 
 static void print_version(struct perf_header *ph, int fd, FILE *fp)
@@ -1227,7 +1221,7 @@ int build_id_cache__add_s(const char *sbuild_id, const char *debugdir,
        if (realname == NULL || filename == NULL || linkname == NULL)
                goto out_free;
 
-       len = snprintf(filename, size, "%s%s%s",
+       len = scnprintf(filename, size, "%s%s%s",
                       debugdir, is_kallsyms ? "/" : "", realname);
        if (mkdir_p(filename, 0755))
                goto out_free;
@@ -1242,7 +1236,7 @@ int build_id_cache__add_s(const char *sbuild_id, const char *debugdir,
                        goto out_free;
        }
 
-       len = snprintf(linkname, size, "%s/.build-id/%.2s",
+       len = scnprintf(linkname, size, "%s/.build-id/%.2s",
                       debugdir, sbuild_id);
 
        if (access(linkname, X_OK) && mkdir_p(linkname, 0755))