BSD 4_2 release
[unix-history] / usr / src / usr.bin / refer / hunt3.c
index 839714c..b9d92e7 100644 (file)
@@ -1,59 +1,50 @@
-# include "refer..c"
+#ifndef lint
+static char *sccsid = "@(#)hunt3.c     4.2 (Berkeley) 6/28/83";
+#endif
+
+#include "refer..c"
+#define BSIZ 250
+
 getq(v)
 getq(v)
-       char *v[];
+char *v[];
 {
 {
-# define BSIZ 250
-static char buff[BSIZ];
-static int eof = 0;
-extern char *sinput;
-char *p;
-int c, n = 0, las = 0;
-if (eof) return(-1);
-p = buff;
-while ( (c = (sinput ? *sinput++ : getchar()) ) > 0)
+       static char buff[BSIZ];
+       static int eof = 0;
+       extern char *sinput;
+       char *p;
+       int c, n = 0, las = 0;
+       if (eof) return(-1);
+       p = buff;
+       while ( (c = (sinput ? *sinput++ : getchar()) ) > 0)
        {
        {
-       if (c== '\n')
-               break;
-       if (isalpha(c) || isdigit(c))
+               if (c== '\n')
+                       break;
+               if (isalpha(c) || isdigit(c))
                {
                {
-               if (las==0)
+                       if (las==0)
                        {
                        {
-                       v[n++] = p;
-                       las=1;
+                               v[n++] = p;
+                               las=1;
                        }
                        }
-               if (las++ <= 6)
-                       *p++ = c;
+                       if (las++ <= 6)
+                               *p++ = c;
                }
                }
-       else
+               else
                {
                {
-               if (las>0)
-                       *p++ = 0;
-               las=0;
+                       if (las>0)
+                               *p++ = 0;
+                       las=0;
                }
        }
                }
        }
-*p=0;
-assert(p<buff+BSIZ);
-if (sinput==0 && c<= 0) eof=1;
-n = keycomp(v,n);
+       *p=0;
+       if (p > buff + BSIZ)
+               fprintf(stderr, "query long than %d characters\n", BSIZ);
+       assert(p < buff + BSIZ);
+       if (sinput==0 && c<= 0) eof=1;
 # if D1
 # if D1
-fprintf(stderr, "no. keys %d\n",n);
-for(c=0; c<n; c++)
- fprintf(stderr, "keys X%sX\n", v[c]);
+       fprintf(stderr, "no. keys %d\n",n);
+       for(c=0; c<n; c++)
              fprintf(stderr, "keys X%sX\n", v[c]);
 # endif
 # endif
-return(n);
-}
-keycomp(v,n) /* compress keys */
-       char *v[];
-{
-int i, j, k;
-for(i=j=0; i<n; i++)
-       {
-       for(k=0; k<j; k++)
-               if (strcmp(v[i], v[k])==0)
-                       break;
-       if (k<j) /* found it */
-               continue;
-       v[j++] = v[i];
-       }
-return(j);
+       return(n);
 }
 }