Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Memproof показал на утечку при работе с записями


Ал ©   (2003-10-07 14:25:00) 

В коде имею примерно такое:

 THeader = packed record
   IsDigital     : Boolean;
   BlurRectangle : TRect;
   BlurQuality   : Byte;
   TransColor    : TColor;
 end;

...

Header : THeader;

...

читаю в Header из потока

FileInStream.Read(Header, SizeOf(Header));

а когда обращаюсь к полям этой записи
напр.,

n1 := n2 + Header.BlurRectangle.Left и т. д.

memproof ругается, что в Header.BlurRectangle.Left создается указатель, который не освобождается. На каждом таком операторе теряется 30-50 байт.
Вроде не много, но таких операторов много, периодический повторяютя. В результате могу терять до 10 кБайт в минуту работы программы. И в диспетчетре задач это видно.
Подскажите, что можно сделать?


SPeller   (2003-10-07 15:58:00) [1]

Ошибка в 17 строке. Если n1 и n2 - НЕ указатели, то проблема в компиляторе, а не в КОЛ.


Наверх

Титульная страница Поиск, карта сайта Написать письмо