On Wed, Jan 14, 2015 at 9:27 PM, Michael Paquier <michael.paqu...@gmail.com> wrote: > On Thu, Jan 15, 2015 at 7:13 AM, Robert Haas <robertmh...@gmail.com> wrote: >> Instead of doing this: >> >> if (len < sizeof(buf)) >> buf[len] = '\0'; >> >> ...I would suggest making the size of the buffer one greater than the >> size of the read(), and then always nul-terminating the buffer. It >> seems to me that would make the code easier to reason about. > How about the attached then? This way we still detect the same way any > invalid values: > - if ((len = read(fd, buf, sizeof(buf))) < 0) > + if ((len = read(fd, buf, sizeof(buf) - 1)) < 0)
Committed and back-patched all the way. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers