summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorClark Williams <williams@redhat.com>2007-08-02 10:38:35 -0500
committerClark Williams <williams@redhat.com>2007-08-02 10:38:35 -0500
commitdf1d4276483b1d7f2d08cdc86dbbb1890ba86d08 (patch)
tree33e1dc2bd53a1c08ec19b989989249b0f2242941
parent515d313e7d352bfdf04434b3c5321ccba2a82080 (diff)
downloadmock-df1d4276483b1d7f2d08cdc86dbbb1890ba86d08.tar.gz
mock-df1d4276483b1d7f2d08cdc86dbbb1890ba86d08.tar.xz
mock-df1d4276483b1d7f2d08cdc86dbbb1890ba86d08.zip
removed error() call on closedir()mock-0.7.5
-rw-r--r--src/mock-helper.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/mock-helper.c b/src/mock-helper.c
index 8d9e68a..7a6fc74 100644
--- a/src/mock-helper.c
+++ b/src/mock-helper.c
@@ -569,7 +569,9 @@ do_orphanskill (int argc, char *argv[])
int pid;
ssize_t link_buf_got;
+ /* reset any errors from the previous iteration */
errno = 0;
+
if (dirent->d_type != DT_DIR)
continue;
@@ -577,18 +579,22 @@ do_orphanskill (int argc, char *argv[])
for (cs = dirent->d_name; *cs; cs++)
if (isdigit (*cs) == 0)
break;
+
if (cs == dirent->d_name || *cs != 0)
continue;
+
pid = atoi (dirent->d_name);
proc_root_got = snprintf (proc_root, sizeof (proc_root), "/proc/%d/root",
pid);
+
if (proc_root_got <= 0 || proc_root_got >= sizeof (proc_root)) {
warning("/proc/%d/root: %s", pid, strerror (errno));
continue;
}
link_buf_got = readlink (proc_root, link_buf, chrootdir_len);
+
/* Errors may occur due to races. */
if (link_buf_got != chrootdir_len - 1
|| memcmp (link_buf, chrootdir, chrootdir_len - 1) != 0)
@@ -596,9 +602,6 @@ do_orphanskill (int argc, char *argv[])
orphanskill_pid (pid);
}
-
- if (closedir (dir) != 0)
- error ("closedir (\"/proc\"): %s", strerror (errno));
}
int