Bug in RO/Delphi - AV in ObjectToXML [10.0.0.1545]

Hello,

under 10.0.0.1541 I can use ObjectToXML (uROXMLSerializer.pas) without problems.

But under 10.0.0.1545 there is AV on the line:

l_serializer.Write(anObject.ClassName, anObject.ClassInfo, anObject);

AV seems to be independent on TROComplexType structure.

Can you please check it out?

Thanks, Peter.

Hi,

Can you show callstack and error message, pls?
Can you create a simple testcase that reproduces this issue, pls?

try to add fMaxStringSize := -1; to constructor TROXMLSerializer.Create(aStorageRef: Pointer);. will it solve this issue?

Hello Evgeny,

yes, the problem is caused by TROSerializer.MaxStringSize - which is zero, what is the root of problem.

Exception is raised by TROXMLSerializer._WriteUnicodeString on its first line:

if (MaxStringSize <> -1) and (MaxStringSize < Length(aValue)) then RaiseError(err_MaxStringSize_write, [Length(aValue), MaxStringSize]);

If I modify the value to -1 (what should be default value), everything is OK.

Sincerely,

Peter.

Hi,

odd, it shouldn’t raise AV …


this issue is already fixed for next build (#19286)

new build (.1549) was released