]> git.ipfire.org Git - thirdparty/tar.git/commitdiff
Add missing safety check
authorSergey Poznyakoff <gray@gnu.org>
Fri, 25 Oct 2024 10:40:32 +0000 (13:40 +0300)
committerSergey Poznyakoff <gray@gnu.org>
Fri, 25 Oct 2024 10:40:32 +0000 (13:40 +0300)
* src/system.c (sys_exec_info_script): Check if fdopen succeded.
Fix by Matteo Croce.

src/system.c

index d349bd67182de1876b9bce8ef58169e2dedd57a1..1195255ec97a5e1551cdc0c212b8b930f935e814 100644 (file)
@@ -838,6 +838,12 @@ sys_exec_info_script (const char **archive_name, int volume_number)
 
       xclose (p[PWRITE]);
       fp = fdopen (p[PREAD], "r");
+      if (!fp)
+       {
+         signal (SIGPIPE, saved_handler);
+         call_arg_error ("fdopen", info_script_option);
+         return -1;
+       }
       rc = getline (&buf, &size, fp);
       fclose (fp);