/[pcre]/code/branches/pcre16/pcre_study.c
ViewVC logotype

Diff of /code/branches/pcre16/pcre_study.c

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

revision 107 by ph10, Wed Mar 7 11:02:28 2007 UTC revision 200 by ph10, Wed Aug 1 09:10:40 2007 UTC
# Line 6  Line 6 
6  and semantics are as close as possible to those of the Perl 5 language.  and semantics are as close as possible to those of the Perl 5 language.
7    
8                         Written by Philip Hazel                         Written by Philip Hazel
9             Copyright (c) 1997-2006 University of Cambridge             Copyright (c) 1997-2007 University of Cambridge
10    
11  -----------------------------------------------------------------------------  -----------------------------------------------------------------------------
12  Redistribution and use in source and binary forms, with or without  Redistribution and use in source and binary forms, with or without
# Line 42  POSSIBILITY OF SUCH DAMAGE. Line 42  POSSIBILITY OF SUCH DAMAGE.
42  supporting functions. */  supporting functions. */
43    
44    
45    #ifdef HAVE_CONFIG_H
46    #include <config.h>
47    #endif
48    
49  #include "pcre_internal.h"  #include "pcre_internal.h"
50    
51    
# Line 394  do Line 398  do
398        character with a value > 255. */        character with a value > 255. */
399    
400        case OP_NCLASS:        case OP_NCLASS:
401  #ifdef SUPPORT_UTF8  #ifdef SUPPORT_UTF8
402        if (utf8)        if (utf8)
403          {          {
404          start_bits[24] |= 0xf0;              /* Bits for 0xc4 - 0xc8 */          start_bits[24] |= 0xf0;              /* Bits for 0xc4 - 0xc8 */
405          memset(start_bits+25, 0xff, 7);      /* Bits for 0xc9 - 0xff */          memset(start_bits+25, 0xff, 7);      /* Bits for 0xc9 - 0xff */
406          }          }
407  #endif  #endif
408        /* Fall through */        /* Fall through */
409    
410        case OP_CLASS:        case OP_CLASS:
# Line 431  do Line 435  do
435          /* In non-UTF-8 mode, the two bit maps are completely compatible. */          /* In non-UTF-8 mode, the two bit maps are completely compatible. */
436    
437          else          else
438  #endif  #endif
439            {            {
440            for (c = 0; c < 32; c++) start_bits[c] |= tcode[c];            for (c = 0; c < 32; c++) start_bits[c] |= tcode[c];
441            }            }
# Line 491  Returns: pointer to a pcre_extra bloc Line 495  Returns: pointer to a pcre_extra bloc
495              NULL on error or if no optimization possible              NULL on error or if no optimization possible
496  */  */
497    
498  PCRE_DATA_SCOPE pcre_extra *  PCRE_EXP_DEFN pcre_extra *
499  pcre_study(const pcre *external_re, int options, const char **errorptr)  pcre_study(const pcre *external_re, int options, const char **errorptr)
500  {  {
501  uschar start_bits[32];  uschar start_bits[32];

Legend:
Removed from v.107  
changed lines
  Added in v.200

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12