Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit befe3414 authored by Franck Bui-Huu's avatar Franck Bui-Huu Committed by Arnaldo Carvalho de Melo
Browse files

perf probe: Rewrite show_one_line() to make it simpler



Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
LKML-Reference: <1292854685-8230-3-git-send-email-fbuihuu@gmail.com>
Signed-off-by: default avatarFranck Bui-Huu <fbuihuu@gmail.com>
Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 62c15fc4
Loading
Loading
Loading
Loading
+11 −18
Original line number Diff line number Diff line
@@ -290,28 +290,21 @@ static int get_real_path(const char *raw_path, const char *comp_dir,
static int show_one_line(FILE *fp, int l, bool skip, bool show_num)
{
	char buf[LINEBUF_SIZE];
	const char *color = PERF_COLOR_BLUE;
	const char *color = show_num ? "" : PERF_COLOR_BLUE;
	const char *prefix = NULL;

	do {
		if (fgets(buf, LINEBUF_SIZE, fp) == NULL)
			goto error;
	if (!skip) {
		if (show_num)
			fprintf(stdout, "%7d  %s", l, buf);
		else
			color_fprintf(stdout, color, "         %s", buf);
		if (skip)
			continue;
		if (!prefix) {
			prefix = show_num ? "%7d  " : "         ";
			color_fprintf(stdout, color, prefix, l);
		}

	while (strlen(buf) == LINEBUF_SIZE - 1 &&
	       buf[LINEBUF_SIZE - 2] != '\n') {
		if (fgets(buf, LINEBUF_SIZE, fp) == NULL)
			goto error;
		if (!skip) {
			if (show_num)
				fprintf(stdout, "%s", buf);
			else
		color_fprintf(stdout, color, "%s", buf);
		}
	}

	} while (strchr(buf, '\n') == NULL);

	return 0;
error: