Message ID | 148855786023.23661.6584039229850547004.stgit@bahia |
---|---|
State | New |
Headers | show |
On 03/03/2017 10:17 AM, Greg Kurz wrote: > This was spotted by Coverity as a fd leak. This is certainly true, but also > local_remove() would always return without doing anything, unless the fd is > zero, which is very unlikely. > > (Coverity issue CID1371732) > > Signed-off-by: Greg Kurz <groug@kaod.org> > --- > hw/9pfs/9p-local.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > Reviewed-by: Eric Blake <eblake@redhat.com> > diff --git a/hw/9pfs/9p-local.c b/hw/9pfs/9p-local.c > index f22a3c3654db..5db7104334d6 100644 > --- a/hw/9pfs/9p-local.c > +++ b/hw/9pfs/9p-local.c > @@ -1008,7 +1008,7 @@ static int local_remove(FsContext *ctx, const char *path) > int err = -1; > > dirfd = local_opendir_nofollow(ctx, dirpath); > - if (dirfd) { > + if (dirfd == -1) { > goto out; > } > > > >
diff --git a/hw/9pfs/9p-local.c b/hw/9pfs/9p-local.c index f22a3c3654db..5db7104334d6 100644 --- a/hw/9pfs/9p-local.c +++ b/hw/9pfs/9p-local.c @@ -1008,7 +1008,7 @@ static int local_remove(FsContext *ctx, const char *path) int err = -1; dirfd = local_opendir_nofollow(ctx, dirpath); - if (dirfd) { + if (dirfd == -1) { goto out; }
This was spotted by Coverity as a fd leak. This is certainly true, but also local_remove() would always return without doing anything, unless the fd is zero, which is very unlikely. (Coverity issue CID1371732) Signed-off-by: Greg Kurz <groug@kaod.org> --- hw/9pfs/9p-local.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)