Aurelius Deserializer breaks Delphi Rio

Hi, i'm using Delphi 10.3 Rio, Datasnap Rest, Aurelius 4.2.
  Json Deserializer stop working after updating to Rio and Aurelius 4.2.

Value  := "{"$type":"DB.Schema.TAppVer","$id":1,"FId":0,"FModuleId":1,"FMajor":2,"FMinor":0,"FReleaseX":1}";

function TDBJsonSerializer.FromJson(Value: TJSONValue; T: Tclass): TObject;
 FDeserializer: TDataSnapJsonDeserializer;
 result := nil;
 FDeserializer := TDataSnapJsonDeserializer.Create;
 if Value <> nil then
   Result := FDeserializer.FromJson(Value, T);

Project MVF_ServerVCL.exe raised exception class EInOutError with message 'I/O error 105'.


Do you have steps/project to reproduce the problem? Linking an I/O error to an in-memory json deserialization and guessing what could be wrong is not a very easy task...

Hi Wagner
  Project sent by email, thanks

Thanks, answered there.

Hi, Wagner
There is a ticket on embarcadero for this issue:
To solve this issue we changed unit System.JSON, function TJSONObject.ParseNumber, line 2606:
   Nb := TJSONNumber.Create(''); // original -> Nb := TJSONNumber.Create;
This is not official, we did some tests and it seems to be working.
Comments are apreciated

We were aware of that bug in Rio and next XData release will have a workaround for that.

That was not the error reproduced by the project you sent, though, and the error message indicated in the first post of this thread was not reproducible as well.

Remembering, issue in Delphi Enterprise Rio 10.3(Build 26.0.32429.4364) + Datasnap +Aurelius
We try again, and the issue is very easy to reproduce.