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

Diff of /code/trunk/pcre_exec.c

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

revision 1361 by ph10, Fri Sep 6 17:47:32 2013 UTC revision 1364 by ph10, Sat Oct 5 15:45:11 2013 UTC
# Line 2656  for (;;) Line 2656  for (;;)
2656            RRETURN(MATCH_NOMATCH);            RRETURN(MATCH_NOMATCH);
2657          break;          break;
2658    
2659            /* Perl space used to exclude VT, but from Perl 5.18 it is included,
2660            which means that Perl space and POSIX space are now identical. PCRE
2661            was changed at release 8.34. */
2662    
2663          case PT_SPACE:    /* Perl space */          case PT_SPACE:    /* Perl space */
         if ((PRIV(ucp_gentype)[prop->chartype] == ucp_Z ||  
              c == CHAR_HT || c == CHAR_NL || c == CHAR_FF || c == CHAR_CR)  
                == (op == OP_NOTPROP))  
           RRETURN(MATCH_NOMATCH);  
         break;  
   
2664          case PT_PXSPACE:  /* POSIX space */          case PT_PXSPACE:  /* POSIX space */
2665          if ((PRIV(ucp_gentype)[prop->chartype] == ucp_Z ||          if ((PRIV(ucp_gentype)[prop->chartype] == ucp_Z ||
2666               c == CHAR_HT || c == CHAR_NL || c == CHAR_VT ||               c == CHAR_HT || c == CHAR_NL || c == CHAR_VT ||
# Line 4283  for (;;) Line 4281  for (;;)
4281              }              }
4282            break;            break;
4283    
4284              /* Perl space used to exclude VT, but from Perl 5.18 it is included,
4285              which means that Perl space and POSIX space are now identical. PCRE
4286              was changed at release 8.34. */
4287    
4288            case PT_SPACE:    /* Perl space */            case PT_SPACE:    /* Perl space */
           for (i = 1; i <= min; i++)  
             {  
             if (eptr >= md->end_subject)  
               {  
               SCHECK_PARTIAL();  
               RRETURN(MATCH_NOMATCH);  
               }  
             GETCHARINCTEST(c, eptr);  
             if ((UCD_CATEGORY(c) == ucp_Z || c == CHAR_HT || c == CHAR_NL ||  
                  c == CHAR_FF || c == CHAR_CR)  
                    == prop_fail_result)  
               RRETURN(MATCH_NOMATCH);  
             }  
           break;  
   
4289            case PT_PXSPACE:  /* POSIX space */            case PT_PXSPACE:  /* POSIX space */
4290            for (i = 1; i <= min; i++)            for (i = 1; i <= min; i++)
4291              {              {
# Line 5031  for (;;) Line 5018  for (;;)
5018              }              }
5019            /* Control never gets here */            /* Control never gets here */
5020    
5021              /* Perl space used to exclude VT, but from Perl 5.18 it is included,
5022              which means that Perl space and POSIX space are now identical. PCRE
5023              was changed at release 8.34. */
5024    
5025            case PT_SPACE:    /* Perl space */            case PT_SPACE:    /* Perl space */
           for (fi = min;; fi++)  
             {  
             RMATCH(eptr, ecode, offset_top, md, eptrb, RM60);  
             if (rrc != MATCH_NOMATCH) RRETURN(rrc);  
             if (fi >= max) RRETURN(MATCH_NOMATCH);  
             if (eptr >= md->end_subject)  
               {  
               SCHECK_PARTIAL();  
               RRETURN(MATCH_NOMATCH);  
               }  
             GETCHARINCTEST(c, eptr);  
             if ((UCD_CATEGORY(c) == ucp_Z || c == CHAR_HT || c == CHAR_NL ||  
                  c == CHAR_FF || c == CHAR_CR)  
                    == prop_fail_result)  
               RRETURN(MATCH_NOMATCH);  
             }  
           /* Control never gets here */  
   
5026            case PT_PXSPACE:  /* POSIX space */            case PT_PXSPACE:  /* POSIX space */
5027            for (fi = min;; fi++)            for (fi = min;; fi++)
5028              {              {
# Line 5549  for (;;) Line 5522  for (;;)
5522              }              }
5523            break;            break;
5524    
5525              /* Perl space used to exclude VT, but from Perl 5.18 it is included,
5526              which means that Perl space and POSIX space are now identical. PCRE
5527              was changed at release 8.34. */
5528    
5529            case PT_SPACE:    /* Perl space */            case PT_SPACE:    /* Perl space */
           for (i = min; i < max; i++)  
             {  
             int len = 1;  
             if (eptr >= md->end_subject)  
               {  
               SCHECK_PARTIAL();  
               break;  
               }  
             GETCHARLENTEST(c, eptr, len);  
             if ((UCD_CATEGORY(c) == ucp_Z || c == CHAR_HT || c == CHAR_NL ||  
                  c == CHAR_FF || c == CHAR_CR)  
                  == prop_fail_result)  
               break;  
             eptr+= len;  
             }  
           break;  
   
5530            case PT_PXSPACE:  /* POSIX space */            case PT_PXSPACE:  /* POSIX space */
5531            for (i = min; i < max; i++)            for (i = min; i < max; i++)
5532              {              {

Legend:
Removed from v.1361  
changed lines
  Added in v.1364

  ViewVC Help
Powered by ViewVC 1.1.5