/[pcre]/code/trunk/pcre_study.c
ViewVC logotype

Diff of /code/trunk/pcre_study.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 707 by ph10, Mon Sep 19 12:28:24 2011 UTC revision 708 by ph10, Fri Sep 23 11:03:03 2011 UTC
# Line 138  for (;;) Line 138  for (;;)
138    
139      case OP_ACCEPT:      case OP_ACCEPT:
140      case OP_ASSERT_ACCEPT:      case OP_ASSERT_ACCEPT:
141      return -1;      return -1;
142    
143      /* Reached end of a branch; if it's a ket it is the end of a nested      /* Reached end of a branch; if it's a ket it is the end of a nested
144      call. If it's ALT it is an alternation in a nested call. If it is END it's      call. If it's ALT it is an alternation in a nested call. If it is END it's
145      the end of the outer call. All can be handled by the same code. If an      the end of the outer call. All can be handled by the same code. If an
146      ACCEPT was previously encountered, use the length that was in force at that      ACCEPT was previously encountered, use the length that was in force at that
147      time, and pass back the shortest ACCEPT length. */      time, and pass back the shortest ACCEPT length. */
148    
149      case OP_ALT:      case OP_ALT:
150      case OP_KET:      case OP_KET:
151      case OP_KETRMAX:      case OP_KETRMAX:
# Line 1291  switch(min = find_minlength(code, code, Line 1291  switch(min = find_minlength(code, code,
1291    case -3: *errorptr = "internal error: opcode not recognized"; return NULL;    case -3: *errorptr = "internal error: opcode not recognized"; return NULL;
1292    default: break;    default: break;
1293    }    }
1294    
1295  /* If a set of starting bytes has been identified, or if the minimum length is  /* If a set of starting bytes has been identified, or if the minimum length is
1296  greater than zero, or if JIT optimization has been requested, get a pcre_extra  greater than zero, or if JIT optimization has been requested, get a pcre_extra
1297  block and a pcre_study_data block. The study data is put in the latter, which  block and a pcre_study_data block. The study data is put in the latter, which
# Line 1333  if (bits_set || min > 0 Line 1333  if (bits_set || min > 0
1333    zero - the interpretive pcre_exec() and pcre_dfa_exec() needn't waste time    zero - the interpretive pcre_exec() and pcre_dfa_exec() needn't waste time
1334    checking the zero case. */    checking the zero case. */
1335    
1336    if (min > 0)    if (min > 0)
1337      {      {
1338      study->flags |= PCRE_STUDY_MINLEN;      study->flags |= PCRE_STUDY_MINLEN;
1339      study->minlength = min;      study->minlength = min;
1340      }      }
1341    else study->minlength = 0;    else study->minlength = 0;
1342    
1343    /* If JIT support was compiled and requested, attempt the JIT compilation.    /* If JIT support was compiled and requested, attempt the JIT compilation.
1344    If no starting bytes were found, and the minimum length is zero, and JIT    If no starting bytes were found, and the minimum length is zero, and JIT

Legend:
Removed from v.707  
changed lines
  Added in v.708

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12