Get rid of a gcc warning on recent Ubuntu systems.
authorAndre Noll <maan@systemlinux.org>
Fri, 28 Nov 2008 12:07:08 +0000 (13:07 +0100)
committerAndre Noll <maan@systemlinux.org>
Fri, 28 Nov 2008 12:07:08 +0000 (13:07 +0100)
fchdir() is marked with warn_unused_result which produces a
warning in the error path of para_opendir(). However, we really
want to ignore the return value in this particular case, so introduce
a rather ugly fix to avoid the warning.

fd.c

diff --git a/fd.c b/fd.c
index 5885172..d0b5c89 100644 (file)
--- a/fd.c
+++ b/fd.c
@@ -285,9 +285,10 @@ int para_opendir(const char *dirname, DIR **dir, int *cwd)
        if (*dir)
                return 1;
        ret = -ERRNO_TO_PARA_ERROR(errno);
-/* Ignore return value of fchdir() and close(). We're busted anyway. */
-       if (cwd)
-               fchdir(*cwd);
+       /* Ignore return value of fchdir() and close(). We're busted anyway. */
+       if (cwd) {
+               int __a_unused ret2 = fchdir(*cwd); /* STFU, gcc */
+       }
 close_cwd:
        if (cwd)
                close(*cwd);