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

Diff of /code/trunk/pcre_compile.c

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

revision 308 by ph10, Sun Jan 20 20:07:32 2008 UTC revision 309 by ph10, Mon Jan 21 15:22:09 2008 UTC
# Line 2688  for (;; ptr++) Line 2688  for (;; ptr++)
2688  #ifdef SUPPORT_UTF8  #ifdef SUPPORT_UTF8
2689      class_utf8 = FALSE;                       /* No chars >= 256 */      class_utf8 = FALSE;                       /* No chars >= 256 */
2690      class_utf8data = code + LINK_SIZE + 2;    /* For UTF-8 items */      class_utf8data = code + LINK_SIZE + 2;    /* For UTF-8 items */
2691      class_utf8data_base = class_utf8data;     /* For resetting in pass 1 */      class_utf8data_base = class_utf8data;     /* For resetting in pass 1 */
2692  #endif  #endif
2693    
2694      /* Process characters until ] is reached. By writing this as a "do" it      /* Process characters until ] is reached. By writing this as a "do" it
# Line 2704  for (;; ptr++) Line 2704  for (;; ptr++)
2704          {                           /* Braces are required because the */          {                           /* Braces are required because the */
2705          GETCHARLEN(c, ptr, ptr);    /* macro generates multiple statements */          GETCHARLEN(c, ptr, ptr);    /* macro generates multiple statements */
2706          }          }
2707    
2708        /* In the pre-compile phase, accumulate the length of any UTF-8 extra        /* In the pre-compile phase, accumulate the length of any UTF-8 extra
2709        data and reset the pointer. This is so that very large classes that        data and reset the pointer. This is so that very large classes that
2710        contain a zillion UTF-8 characters no longer overwrite the work space        contain a zillion UTF-8 characters no longer overwrite the work space
2711        (which is on the stack). */        (which is on the stack). */
2712    
2713        if (lengthptr != NULL)        if (lengthptr != NULL)
2714          {          {
2715          *lengthptr += class_utf8data - class_utf8data_base;          *lengthptr += class_utf8data - class_utf8data_base;
2716          class_utf8data = class_utf8data_base;          class_utf8data = class_utf8data_base;
2717          }          }
2718    
2719  #endif  #endif
2720    
2721        /* Inside \Q...\E everything is literal except \E */        /* Inside \Q...\E everything is literal except \E */

Legend:
Removed from v.308  
changed lines
  Added in v.309

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12