close Warning: Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 14 years ago

Closed 14 years ago

#1138 closed defect (fixed)

Memory leak in Excel.ReadCell

Reported by: Víctor de Buen Remiro Owned by: Jorge
Priority: highest Milestone: Mantainance
Component: Excel API Version: head
Severity: blocker Keywords:
Cc:

Description (last modified by Víctor de Buen Remiro)

Next code shows how function Excel.ReadCell lost three objects in each iteration.

Real CheckMemoryLeakInCycle (4, Real(Real void)
{
  Real xls = Excel.Open("../test_0001/data.xls");
  Real Excel.ActivateWS(xls,1);
  Anything cell = Excel.ReadCell(xls,[[1, 1]]);
  Real Excel.Close(xls);
  True
});

ouput:

lost objects = 12 in 4 iterations
lost objects by iteration= 3

However Excel.ReadText doesn't lost any object

Real CheckMemoryLeakInCycle (4, Real(Real void)
{
  Real xls = Excel.Open("../test_0001/data.xls");
  Real Excel.ActivateWS(xls,1);
  Text cell = Excel.ReadText(xls,[[1, 1]]);
  Real Excel.Close(xls);
  True
});

ouput:

lost objects = 0 in 4 iterations
lost objects by iteration= 0

Change History (2)

comment:1 Changed 14 years ago by Víctor de Buen Remiro

Description: modified (diff)

comment:2 Changed 14 years ago by Víctor de Buen Remiro

Resolution: fixed
Status: newclosed

(In [3353]) Fixes #1138
Special functions must destroy auxiliar objects created with EvaluateTree

Note: See TracTickets for help on using tickets.