SASGIS

Веб-картография и навигация


View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0003450SAS.Планета[All Projects] Багpublic03-06-2019 18:4018-03-2020 17:04
Reporterzed 
Assigned Tozed 
PrioritynormalSeverityminorReproducibilityhave not tried
StatusresolvedResolutionfixed 
PlatformOSOS Version
Product Version190707 
Target Version191221Fixed in Version191221 
Summary0003450: Утечка памяти в TB2Toolbar
DescriptionЗаметил непонятно откуда взявшуюся утечку памяти (не удаляется хук?) в TB2Toolbar.

Есть идеи из-за чего она появилась и как победить?
TagsNo tags attached.
Attached Files? file icon SASPlanet.Debug.elf [^] (1,761 bytes) 03-06-2019 18:40

- Relationships
has duplicate 0003634closedzed Ошибка утечки памяти при закрытии программы 
related to 0003466resolvedzed Закрытие программы происходит с ошибкой: FastMM has detected a GetMem call after FastMM was uninstalled 

-  Notes
(0018723)
zed (manager)
03-06-2019 20:34
edited on: 03-06-2019 20:38

В билде 190524.9946 утечки нету, а в следующем (190528.9953) уже есть.

Единственное, что приходит в голову - в этом промежутке обновлялась библиотека gnugettext.

(0018724)
vdemidov (manager)
04-06-2019 06:18

Идей нет, разве что попробовать бисектом пройтись и точно выяснить коммит, в котором утечка появилась.
(0018725)
zed (manager)
04-06-2019 07:10
edited on: 04-06-2019 07:13

Выяснил точно - появляется вот тут:
Changeset: 9949 (7f4d29cf3035) Обновление gettext из svn


(0018728)
vdemidov (manager)
04-06-2019 07:34

Ясно. А во всех версиях Delphi проявляется?
(0018729)
zed (manager)
04-06-2019 07:45

За все не скажу, но в D2007 и в 10.3 - есть.
(0019525)
zed (manager)
01-12-2019 15:48

Исправил. Оказалось, что из-за неправильной декларации хука (class function вместо метода класса), внутри Vcl.Forms не срабатывала проверка наличия переданного хука в списке зарегистрированных:

procedure TApplication.UnhookMainWindow(Hook: TWindowHook);
...
if (TMethod(WindowHook^).Code = TMethod(Hook).Code) and
   (TMethod(WindowHook^).Data = TMethod(Hook).Data) then

и он, соответственно, не удалялся.

- Users who viewed this issue
User List Anonymous (1808x), vdemidov (16x), kalakotkas (6x), zed (13x), rass (1x), Parasite (1x)
Total Views 1845
Last View 02-12-2024 23:28

- Issue History
Date Modified Username Field Change
03-06-2019 18:40 zed New Issue
03-06-2019 18:40 zed File Added: SASPlanet.Debug.elf
03-06-2019 20:34 zed Note Added: 0018723
03-06-2019 20:38 zed Note Edited: 0018723 View Revisions
04-06-2019 06:18 vdemidov Note Added: 0018724
04-06-2019 07:10 zed Note Added: 0018725
04-06-2019 07:13 zed Note Edited: 0018725 View Revisions
04-06-2019 07:34 vdemidov Note Added: 0018728
04-06-2019 07:45 zed Note Added: 0018729
08-07-2019 09:37 vdemidov Product Version .Nightly => 190707
10-07-2019 10:08 zed Relationship added related to 0003466
01-12-2019 15:48 zed Note Added: 0019525
01-12-2019 15:48 zed Status new => resolved
01-12-2019 15:48 zed Fixed in Version => 191221
01-12-2019 15:48 zed Resolution open => fixed
01-12-2019 15:48 zed Assigned To => zed
01-12-2019 15:49 zed Target Version => 191221
18-03-2020 17:04 zed Relationship added has duplicate 0003634



Copyright © 2007 - 2024 SAS.Planet Team