summaryrefslogtreecommitdiff
path: root/dfa.c
diff options
context:
space:
mode:
authorVern Paxson <vern@ee.lbl.gov>1994-12-03 11:29:17 +0000
committerVern Paxson <vern@ee.lbl.gov>1994-12-03 11:29:17 +0000
commit75361e290c06665668a73e249a162aa34d6bdca8 (patch)
treeff088b7607f6d9d44608edebceff0b769557f212 /dfa.c
parent34221e63103ddfd4ecf293638fbdc8290c37f9a1 (diff)
fixed bug with caseins but not ecs
Diffstat (limited to 'dfa.c')
-rw-r--r--dfa.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/dfa.c b/dfa.c
index 7a4d42a..72c80cf 100644
--- a/dfa.c
+++ b/dfa.c
@@ -677,16 +677,26 @@ void ntod()
}
}
- numsnpairs = numsnpairs + totaltrans;
-
if ( caseins && ! useecs )
{
register int j;
for ( i = 'A', j = 'a'; i <= 'Z'; ++i, ++j )
+ {
+ if ( state[i] == 0 && state[j] != 0 )
+ /* We're adding a transition. */
+ ++totaltrans;
+
+ else if ( state[i] != 0 && state[j] == 0 )
+ /* We're taking away a transition. */
+ --totaltrans;
+
state[i] = state[j];
+ }
}
+ numsnpairs += totaltrans;
+
if ( ds > num_start_states )
check_for_backing_up( ds, state );