Skip to content
  • Michael Natterer's avatar
    Bug 620604 - Description of "histogram" procedure is slightly inaccurate · 9dd373d8
    Michael Natterer authored
    Fix totally broken value ranges of integer PDB parameters. Magically,
    the bug was affecting only exactly the two cases mentioned in above
    bug report.
    
    * tools/pdbgen/pdb.pl (arg_parse): return <, <=, > and >= literally
      instead of applying a mapping that was originally meant for
      generated C code that would e.g. transform "0 <= int32 < 10" into
      "if (value < 0 || value >= 10) fail". This inversion of all
      operators is now wrong because PDB parameters have been turned into
      GParamSpecs which always need inclusive ranges as min and max
      values.
    
    * tools/pdbgen/pdbgen.pl (arrayexpand): generated array length type
      specs must be "0 <= int32", not "0 < int32".
    
    * tools/pdbgen/app.pl: when generating integer param specs, check if
      the value range is specified in terms of < instead of <=, and
      add/subtract 1, resuting in the inclusive range needed for integer
      GParamSpecs.
    
    * app/pdb/color-cmds.c: regenerated, fixing the two broken ranges
      mentioned in the bug report.
    9dd373d8