[PATCH v2] fixdep: add fstat error handling
David Leonard
d+busybox at adaptive-enterprises.com
Thu Apr 25 08:21:01 UTC 2024
On Tue, 23 Apr 2024, Sam James wrote:
> }
> - fstat(fd, &st);
> + if (fstat(fd, &st) < 0) {
> + fprintf(stderr, "fixdep: fstat");
> + perror(filename);
> + exit(2);
> + }
> if (st.st_size == 0) {
> close(fd);
> return;
> @@ -368,7 +372,11 @@ void print_deps(void)
> perror(depfile);
> exit(2);
> }
> - fstat(fd, &st);
> + if (fstat(fd, &st) < 0) {
> + fprintf(stderr, "fixdep: fstat");
> + perror(depfile);
> + exit(2);
> + }
> if (st.st_size == 0) {
> fprintf(stderr,"fixdep: %s is empty\n",depfile);
> close(fd);
I worry that the fprintf() may destroy the errno which perror() uses,
so you could get a random error message.
Perhaps remove the fprintf(s) completely? Because the context should be
clear enough from the filename alone that perror displays.
David
More information about the busybox
mailing list