pike.git / src / opcodes.c

version» Context lines:

pike.git/src/opcodes.c:17:   #include "error.h"   #include "pike_types.h"   #include "pike_memory.h"   #include "fd_control.h"   #include "cyclic.h"   #include "builtin_functions.h"   #include "module_support.h"   #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)   {    INT32 i;      #ifdef PIKE_SECURITY    if(what->type <= MAX_COMPLEX)    if(!CHECK_DATA_SECURITY(what->u.array, SECURITY_BIT_INDEX))    error("Index permission denied.\n");   #endif
pike.git/src/opcodes.c:889:    }    else    while(--field_length >= 0)    {    sval.u.integer<<=8;    sval.u.integer|=EXTRACT_UCHAR(input+eye);    eye++;    }    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)    {    chars_matched[0]=eye;    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;    return matches;    }    eye=t-input;    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;       if(eye>=input_len)    {    chars_matched[0]=eye;    return matches;    }    sval.u.float_number=STRTOD(input+eye,&t);