am 7d03c9cb: pathconf: dead loop in bionic function __2_symlinks
* commit '7d03c9cbcedb1dc7e3a8210ac0001120558ec6df':
pathconf: dead loop in bionic function __2_symlinks
diff --git a/libc/unistd/pathconf.c b/libc/unistd/pathconf.c
index 032f918..26b580f 100644
--- a/libc/unistd/pathconf.c
+++ b/libc/unistd/pathconf.c
@@ -70,13 +70,12 @@
};
int nn = 0;
- for (;;) {
- if ( known64[nn] == EOL_MAGIC )
- return 32;
-
- if ( known64[nn] == s->f_type )
+ for (; known64[nn] != EOL_MAGIC; ++nn) {
+ if (known64[nn] == s->f_type) {
return 64;
+ }
}
+ return 32;
}
@@ -99,12 +98,10 @@
};
int nn = 0;
- for (;;) {
- if ( knownMax[nn].type == EOL_MAGIC )
- return LINK_MAX;
-
- if ( knownMax[nn].type == s->f_type )
+ for (; knownMax[nn].type != EOL_MAGIC; ++nn) {
+ if (knownMax[nn].type == s->f_type) {
return knownMax[nn].max;
+ }
}
return LINK_MAX;
}
@@ -121,12 +118,12 @@
};
int nn = 0;
- for (;;) {
- if (knownNoSymlinks[nn] == 0)
- return 1;
- if (knownNoSymlinks[nn] == s->f_type)
+ for (; knownNoSymlinks[nn] != EOL_MAGIC; ++nn) {
+ if (knownNoSymlinks[nn] == s->f_type) {
return 0;
+ }
}
+ return 1;
}
static long