coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] tail: remove excessive checks on buffer sizes before printing


From: Nikolay Nechaev
Subject: [PATCH] tail: remove excessive checks on buffer sizes before printing
Date: Sun, 20 Jun 2021 17:54:01 +0300

* src/tail.c: remove excessive size checks before calls to
`xwrite_stdout`

`xwrite_stdout` itself checks if what is to be printed out
has positive size, and only proceeds then. There is no need
to check if buffers are of positive size before printing
them out with `xwrite_stdout`

Signed-off-by: Nikolay Nechaev <Nikolay_Nechaev@mail.ru>
---
 src/tail.c | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/src/tail.c b/src/tail.c
index ff567560d..44a6e3e68 100644
--- a/src/tail.c
+++ b/src/tail.c
@@ -579,8 +579,7 @@ file_lines (char const *pretty_filename, int fd, uintmax_t 
n_lines,
             {
               /* If this newline isn't the last character in the buffer,
                  output the part that is after it.  */
-              if (n != bytes_read - 1)
-                xwrite_stdout (nl + 1, bytes_read - (n + 1));
+              xwrite_stdout (nl + 1, bytes_read - (n + 1));
               *read_pos += dump_remainder (false, pretty_filename, fd,
                                            end_pos - (pos + bytes_read));
               return true;
@@ -881,8 +880,8 @@ start_bytes (char const *pretty_filename, int fd, uintmax_t 
n_bytes,
       else
         {
           size_t n_remaining = bytes_read - n_bytes;
-          if (n_remaining)
-            xwrite_stdout (&buffer[n_bytes], n_remaining);
+          // Print extra characters if there are any
+          xwrite_stdout (&buffer[n_bytes], n_remaining);
           break;
         }
     }
@@ -923,8 +922,8 @@ start_lines (char const *pretty_filename, int fd, uintmax_t 
n_lines,
           ++p;
           if (--n_lines == 0)
             {
-              if (p < buffer_end)
-                xwrite_stdout (p, buffer_end - p);
+              // Print extra characters if there are any
+              xwrite_stdout (p, buffer_end - p);
               return 0;
             }
         }
-- 
2.25.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]