diff options
author | Fabian Groffen <grobian@gentoo.org> | 2020-01-22 20:36:02 +0100 |
---|---|---|
committer | Fabian Groffen <grobian@gentoo.org> | 2020-01-22 20:36:02 +0100 |
commit | 1c0e24930af5f445d8c633791eb3ea2317b82b68 (patch) | |
tree | 080e3e624cd20377a9b6224f48c8ea4f4918677e /qpkg.c | |
parent | libq/eat_file: fix Coverity 125891 Ignoring number of bytes read (diff) | |
download | portage-utils-1c0e24930af5f445d8c633791eb3ea2317b82b68.tar.gz portage-utils-1c0e24930af5f445d8c633791eb3ea2317b82b68.tar.bz2 portage-utils-1c0e24930af5f445d8c633791eb3ea2317b82b68.zip |
qpkg: fix Coverity 125896 Unchecked return value
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
Diffstat (limited to 'qpkg.c')
-rw-r--r-- | qpkg.c | 13 |
1 files changed, 11 insertions, 2 deletions
@@ -251,7 +251,11 @@ qpkg_make(depend_atom *atom) pclose(fp); /* get offset where xpak will start */ - stat(tbz2, &st); + if (stat(tbz2, &st) == -1) { + warnp("could not stat '%s': %s", tbz2, strerror(errno)); + free(buf); + return 1; + } xpaksize = st.st_size; snprintf(buf, buflen, "%s/%s/%s", @@ -260,7 +264,12 @@ qpkg_make(depend_atom *atom) xpak_argv[1] = NULL; xpak_create(AT_FDCWD, tbz2, 1, xpak_argv, 1, verbose); - stat(tbz2, &st); + /* calculate the number of bytes taken by the xpak archive */ + if (stat(tbz2, &st) == -1) { + warnp("could not stat '%s': %s", tbz2, strerror(errno)); + free(buf); + return 1; + } xpaksize = st.st_size - xpaksize; /* save tbz2 tail: OOOOSTOP */ |