Potential Memory Leak in Latest release in Delphi

We have just begun testing of in Delphi 10.3.3 and just wanted to post our initial observation of a leak of a TROClientThread and a EROSocketError in a test case which we haven’t narrowed down any further. This update of RO is from a fairly recent prior version and no other objects show in the leak report. Although I appreciate this is a partial report, I suspect it is impossible to not be a fault in the new release as no other components have leaked and we have done extensive work to ensure leaking is not occurring elsewhere in the code. Also, thanks for fixing the fault in the initial 1511 release so fast with relation to private.

thanx for the report. Unfortunately, my colleague best suited to look at this is on vacation this week, so i will log this as a bug report even though it is indeed quite incomplete, just so it does not get overlooked.

If you could narrow this down to a simple test case you could share with us, that would help a lot, as I’m not sure how actionable this is otherwise (as i assume our own internal tests did not flag anything — but i’m nit in the loop with that)…

Logged as bugs://D19126.

Thanks Marc, just wanted to get the general heads up logged in early, will spend more time on where the fault is during the week

1 Like

cool, thanx!

Steps to reproduce
Make a new Delphi VCL app
Add ROSuperTcpChannel1: TROSuperTcpChannel;
RORemoteService1: TRORemoteService;
ROBinMessage1: TROBinMessage; and connect as normal using
(RORemoteService1 as IxxxxxService).Function from a button
Connect to a server that is offline (socket inactive on other end)

Using FastMM5 and ReportMemoryLeaksOnShutdown := true;

Socket Errors and the thread is leaked
Delphi 10.3.3

Logged as bugs://D19135.


update uROBaseSuperChannel.pas as

procedure TROBaseSuperChannel.DoException(anException: Exception;
  var aRetry: Boolean);
 // if not aRetry then Active := False;  ///<<<<<<<<<<< comment this line

it will solve this and another your issue

bugs://D19135 was closed as fixed.