[BACK]Return to magic-test.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / file

Diff for /src/usr.bin/file/magic-test.c between version 1.6 and 1.7

version 1.6, 2015/05/29 15:58:01 version 1.7, 2015/08/11 22:12:48
Line 206 
Line 206 
 }  }
   
 static int  static int
   magic_test_double(struct magic_line *ml, double value, double wanted)
   {
           switch (ml->test_operator) {
           case 'x':
                   return (1);
           case '=':
                   return (value == wanted);
           }
           return (-1);
   }
   
   static int
 magic_test_type_none(__unused struct magic_line *ml,  magic_test_type_none(__unused struct magic_line *ml,
     __unused struct magic_state *ms)      __unused struct magic_state *ms)
 {  {
Line 417 
Line 429 
 {  {
         uint32_t        value0;          uint32_t        value0;
         double          value;          double          value;
           int             result;
   
         if (magic_copy_from(ms, -1, &value0, sizeof value0) != 0)          if (magic_copy_from(ms, -1, &value0, sizeof value0) != 0)
                 return (0);                  return (0);
Line 429 
Line 442 
         if (ml->type_operator != ' ')          if (ml->type_operator != ' ')
                 return (-1);                  return (-1);
   
         if (ml->test_operator != 'x')          result = magic_test_double(ml, value, (float)ml->test_double);
                 return (-1);          if (result == !ml->test_not && ml->result != NULL) {
                   magic_add_result(ms, ml, "%g", value);
         magic_add_result(ms, ml, "%g", value);                  ms->offset += sizeof value0;
         ms->offset += sizeof value0;          }
         return (1);          return (1);
 }  }
   
Line 442 
Line 455 
 {  {
         uint64_t        value0;          uint64_t        value0;
         double          value;          double          value;
           int             result;
   
         if (magic_copy_from(ms, -1, &value0, sizeof value0) != 0)          if (magic_copy_from(ms, -1, &value0, sizeof value0) != 0)
                 return (0);                  return (0);
Line 454 
Line 468 
         if (ml->type_operator != ' ')          if (ml->type_operator != ' ')
                 return (-1);                  return (-1);
   
         if (ml->test_operator != 'x')          result = magic_test_double(ml, value, (double)ml->test_double);
                 return (-1);          if (result == !ml->test_not && ml->result != NULL) {
                   magic_add_result(ms, ml, "%g", value);
         magic_add_result(ms, ml, "%g", value);                  ms->offset += sizeof value0;
         ms->offset += sizeof value0;          }
         return (1);          return (1);
 }  }
   

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.7