Branch: Tag:

1999-10-24

1999-10-24 01:08:42 by Fredrik Noring <noring@nocrew.org>

Fixed parsing of explicit base 16 and 0x.

Rev: src/modules/Gmp/mpz_glue.c:1.52
Rev: src/opcodes.c:1.49
Rev: src/stralloc.c:1.71
Rev: src/testsuite.in:1.205

24:   #include "security.h"   #include "bignum.h"    - RCSID("$Id: opcodes.c,v 1.48 1999/10/23 06:51:29 hubbe Exp $"); + RCSID("$Id: opcodes.c,v 1.49 1999/10/24 01:08:38 noring Exp $");      void index_no_free(struct svalue *to,struct svalue *what,struct svalue *ind)   {
896:    }    break;    +  case 'o':    case 'd': -  { -  char * t; -  -  if(eye>=input_len) -  { -  chars_matched[0]=eye; -  return matches; -  } -  -  string_to_svalue_inumber(&sval, input+eye, &t, 10, field_length); -  -  if(input + eye == t) -  { -  chars_matched[0]=eye; -  return matches; -  } -  eye=t-input; -  break; -  } -  +     case 'x': -  +  case 'D': +  case 'i':    {    char * t; -  +  int base = 0;       if(eye>=input_len)    {
927:    return matches;    }    -  string_to_svalue_inumber(&sval, input+eye, &t, 16, field_length); -  -  if(input + eye == t) +  switch(match[cnt])    { -  chars_matched[0]=eye; -  return matches; +  case 'o': base = 8; break; +  case 'd': base = 10; break; +  case 'x': base = 16; break;    } -  eye=t-input; -  break; -  } +     -  case 'o': -  { -  char * t; +  string_to_svalue_inumber(&sval, input+eye, &t, base, field_length);    -  if(eye>=input_len) -  { -  chars_matched[0]=eye; -  return matches; -  } -  -  string_to_svalue_inumber(&sval, input+eye, &t, 8, field_length); -  +     if(input + eye == t)    {    chars_matched[0]=eye;
959:    break;    }    -  case 'D': -  case 'i': -  { -  char * t; -  -  if(eye>=input_len) -  { -  chars_matched[0]=eye; -  return matches; -  } -  -  string_to_svalue_inumber(&sval, input+eye, &t, 0, field_length); -  -  if(input + eye == t) -  { -  chars_matched[0]=eye; -  return matches; -  } -  eye=t-input; -  break; -  } -  +     case 'f':    {    char * t;