Andreas Frieß wrote: > when i compile in Lazarus the Reportdesigner with activated > RangeCheck it gives a lot of runtimeerror with rangeerrors. >
For explanation what i mean in my previous post, UInt32 is not an integer or JSON compatible size (and actual rangecheck unsafe). ANdreas ---------------------- in systemh.inc maxLongint = $7fffffff; in objectpas.pp const MaxInt = MaxLongint; type Integer = longint; in fpreport.pp TFPReportColor = type UInt32; in systemh.inc Cardinal = LongWord; ... UInt32 = Cardinal; in fpreport.pp const { The format is always RRGGBB (Red, Green, Blue) - no alpha channel } clNone = TFPReportColor($80000000); // a special condition: $80 00 00 00 ...... AWriter.WriteInteger('FontColor', Font.Color); ..... Font.Color := AReader.ReadInteger('FontColor', Font.Color); ...... in fpReportStreamer.pp function TFPReportJSONStreamer.ReadInteger(AName: String; ADefault: Integer): Integer; var d: TJSONData; begin d := FindChild(AName) as TJSONData; if d = nil then Result := ADefault else begin if d.JSONType = jtNumber then Result := d.AsInt64 else Result := ADefault; end; end; _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal