Re: [PATCH v2 1/2] t: add a test helper to truncate files
- From
Jeff King <peff@peff.net>
- Date
- Oct 16, 2023, 23:53 UTC
- Message-ID
- <20231016235333.GA551672@coredump.intra.peff.net>
- In-Reply-To
- <20231012160930.330618-2-sandals@crustytoothpaste.net>
On Thu, Oct 12, 2023 at 04:09:29PM +0000, brian m. carlson wrote:
Show 21 quoted lines
> +int cmd__truncate(int argc, const char **argv)
> +{
> + char *p = NULL;
> + uintmax_t sz = 0;
> + int fd = -1;
> +
> + if (argc != 3)
> + die("expected filename and size");
> +
> + sz = strtoumax(argv[2], &p, 0);
> + if (*p)
> + die("invalid size");
> +
> + fd = open(argv[1], O_WRONLY | O_CREAT, 0600);
> + if (fd < 0)
> + die_errno("failed to open file %s", argv[1]);
> +
> + if (ftruncate(fd, (off_t) sz) < 0)
> + die_errno("failed to truncate file");
> + return 0;
> +}Coverity flagged this as leaking the descriptor "fd" (which is obviously true). I guess it doesn't matter much in practice, since we're exiting the process directly afterwards. If it were a memory leak we'd free() it anyway to shut up the leak detector, but I don't know if we want to be as careful here (in theory it creates noise that distracts from real problems, but Coverity is noisy enough that I don't even bother looking at existing problems).
-Peff