# Diff of /code/trunk/pcre_compile.c

revision 848 by ph10, Wed Jan 4 16:34:01 2012 UTC revision 849 by ph10, Wed Jan 4 17:02:01 2012 UTC
# Line 991  else Line 991  else
991      /* \0 always starts an octal number, but we may drop through to here with a      /* \0 always starts an octal number, but we may drop through to here with a
992      larger first octal digit. The original code used just to take the least      larger first octal digit. The original code used just to take the least
993      significant 8 bits of octal numbers (I think this is what early Perls used      significant 8 bits of octal numbers (I think this is what early Perls used
994      to do). Nowadays we allow for larger numbers in UTF-8 mode, but no more      to do). Nowadays we allow for larger numbers in UTF-8 mode and 16-bit mode,
995      than 3 octal digits. */      but no more than 3 octal digits. */
996
997      case CHAR_0:      case CHAR_0:
998      c -= CHAR_0;      c -= CHAR_0;
999      while(i++ < 2 && ptr[1] >= CHAR_0 && ptr[1] <= CHAR_7)      while(i++ < 2 && ptr[1] >= CHAR_0 && ptr[1] <= CHAR_7)
1000          c = c * 8 + *(++ptr) - CHAR_0;          c = c * 8 + *(++ptr) - CHAR_0;
1001    #ifdef COMPILE_PCRE8
1002      if (!utf && c > 0xff) *errorcodeptr = ERR51;      if (!utf && c > 0xff) *errorcodeptr = ERR51;
1003    #endif
1004      break;      break;
1005
1006      /* \x is complicated. \x{ddd} is a character number which can be greater      /* \x is complicated. \x{ddd} is a character number which can be greater

Legend:
 Removed from v.848 changed lines Added in v.849