On Thu, Oct 12, 2023 at 04:09:29PM +0000, brian m. carlson wrote: > +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