]> git.itanic.dy.fi Git - log-plotter/blobdiff - main.c
Move time stamp initialization after first proper log entry is read
[log-plotter] / main.c
diff --git a/main.c b/main.c
index 388f63e0bfdba2a7eb3655182a284d9f17fc75a2..e017fadc92fa7f8ad835e02d0aeefd36143c6c0e 100644 (file)
--- a/main.c
+++ b/main.c
@@ -100,9 +100,6 @@ static int read_data(int infd, int outfd)
                        return -1;
                }
 
-               if (!start_time)
-                       start_time = time(NULL);
-
                ret = read_log_line(infd, buf, sizeof(buf), &offset);
                if (ret < 0)
                        return ret;
@@ -110,6 +107,15 @@ static int read_data(int infd, int outfd)
                if (ret == 0)
                        continue;
 
+               if (strlen(buf) < 5) {
+                       pr_debug("discarding truncated log entry\n");
+                       offset = 0;
+                       continue;
+               }
+
+               if (!start_time)
+                       start_time = time(NULL);
+
                cur_time = time(NULL);
 
                pr_info("%s\n", buf);
@@ -121,7 +127,7 @@ static int read_data(int infd, int outfd)
                        "%ld;%s\n", cur_time - start_time, buf);
 
                ret = write(outfd, str, len);
-               if (read < 0) {
+               if (ret < 0) {
                        pr_err("write: %m\n");
                        break;
                }