chiark / gitweb /
prlimit.c: Fix careless use of `lt' variable.
authorMark Wooding <mdw@distorted.org.uk>
Thu, 15 Dec 2011 00:55:01 +0000 (00:55 +0000)
committerMark Wooding <mdw@distorted.org.uk>
Thu, 15 Dec 2011 01:12:46 +0000 (01:12 +0000)
The `lt' variable is used in the second pass for actually printing
limits, but its value is simply debris from the first command-line
parsing pass and has no useful meaning.

Since it's a convenient abbreviation, initialize it properly in the
second-pass loop and use it consistently.

Spotted by GCC.

prlimit.c

index 8219ab7d88936d1f7f3da8de00e82088e8b0ead7..d7f94f904c14b2d8ae017b9f67c1baabc1164e0f 100644 (file)
--- a/prlimit.c
+++ b/prlimit.c
@@ -298,9 +298,10 @@ int main(int argc, char *argv[])
 
   for (i = 0; i < npid; i++) {
     for (j = 0; j < nassign; j++) {
-      if (prlimit(pid[i], assign[j].lt->id, 0, &lim)) {
+      lt = assign[j].lt;
+      if (prlimit(pid[i], lt->id, 0, &lim)) {
        moan("failed to read `%s' limit for pid %ld: %s",
-            assign[j].lt->name, (long)pid[i], strerror(errno));
+            lt->name, (long)pid[i], strerror(errno));
        goto err;
       }
       if (!assign[j].which) {
@@ -309,9 +310,9 @@ int main(int argc, char *argv[])
       } else {
        if (assign[j].which & f_soft) lim.rlim_cur = assign[j].val;
        if (assign[j].which & f_hard) lim.rlim_max = assign[j].val;
-       if (prlimit(pid[i], assign[j].lt->id, &lim, 0)) {
+       if (prlimit(pid[i], lt->id, &lim, 0)) {
          moan("failed to set `%s' limit for pid %ld: %s\n",
-              assign[j].lt->name, (long)pid[i], strerror(errno));
+              lt->name, (long)pid[i], strerror(errno));
          goto err;
        }
       }