+
+ /*
+ * Loop once for each file in tags "path".
+ */
+ CP(tagfbuf, svalue(TAGS));
+ fne = tagfbuf - 1;
+ while (fne) {
+ fn = ++fne;
+ while (*fne && *fne != ' ')
+ fne++;
+ if (*fne == 0)
+ fne = 0; /* done, quit after this time */
+ else
+ *fne = 0; /* null terminate filename */
+#ifdef VMUNIX
+ iof = fopen(fn, "r");
+ if (iof == NULL)
+ continue;
+ tfcount++;
+ setbuf(iof, iofbuf);
+ fstat(fileno(iof), &sbuf);
+ top = sbuf.st_size;
+ if (top == 0L || iof == NULL)
+ top = -1L;
+ bot = 0L;
+ while (top >= bot) {
+#else
+ /*
+ * Avoid stdio and scan tag file linearly.
+ */
+ io = open(fn, 0);
+ if (io<0)
+ continue;
+ tfcount++;