X-Git-Url: http://git.indexdata.com/?p=idzebra-moved-to-github.git;a=blobdiff_plain;f=dfa%2Freadfile.c;h=458ea256ed728c43e8ea548488f6fa743747d9c1;hp=7983ca6aa235ebbafd76661018f1d59db03defdb;hb=3bb2fd863b1664f1ff71dadb540313f301ca234f;hpb=4461019c0de49358856cb1c84ca162395b247f16 diff --git a/dfa/readfile.c b/dfa/readfile.c index 7983ca6..458ea25 100644 --- a/dfa/readfile.c +++ b/dfa/readfile.c @@ -1,25 +1,26 @@ -/* - * Copyright (C) 1994, Index Data I/S - * All rights reserved. - * Sebastian Hammer, Adam Dickmeiss - * - * $Log: readfile.c,v $ - * Revision 1.4 1995-01-25 11:30:51 adam - * Simple error reporting when parsing regular expressions. - * Memory usage reduced. - * - * Revision 1.3 1995/01/24 16:00:22 adam - * Added -ansi to CFLAGS. - * Some changes to the dfa module. - * - * Revision 1.2 1994/09/26 16:30:57 adam - * Minor changes. imalloc uses xmalloc now. - * - * Revision 1.1 1994/09/26 10:16:56 adam - * First version of dfa module in alex. This version uses yacc to parse - * regular expressions. This should be hand-made instead. - * - */ +/* This file is part of the Zebra server. + Copyright (C) 1994-2011 Index Data + +Zebra is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +Zebra is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +*/ + + +#if HAVE_CONFIG_H +#include +#endif #include #include @@ -27,7 +28,7 @@ #include #include -#include +#include #include #include "lexer.h" @@ -85,6 +86,7 @@ static void read_defs (void) static void read_rules (struct DFA *dfa) { char *s; + const char *sc; int i; int no = 0; @@ -103,7 +105,8 @@ static void read_rules (struct DFA *dfa) /* preprocess regular expression */ prep (&s); /* now parse regular expression */ - i = dfa_parse (dfa, &s); + sc = s; + i = dfa_parse (dfa, &sc); if (i) { fprintf (stderr, "%s #%d: regular expression syntax error\n", @@ -118,9 +121,9 @@ static void read_rules (struct DFA *dfa) no++; fprintf (outf, "\tcase %d:\n#line %d\n\t\t", no, line_no); } - while (*s == '\t' || *s == ' ') - s++; - fputs (s, outf); + while (*sc == '\t' || *sc == ' ') + sc++; + fputs (sc, outf); } } fputs ("\tYY_BREAK\n\t}\n}\n", outf); @@ -161,3 +164,12 @@ int read_file (const char *s, struct DFA *dfa) fclose (inf); return err_no; } +/* + * Local variables: + * c-basic-offset: 4 + * c-file-style: "Stroustrup" + * indent-tabs-mode: nil + * End: + * vim: shiftwidth=4 tabstop=8 expandtab + */ +