AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

VirtualStringTree: Speicherleck

Ein Thema von guidok · begonnen am 27. Okt 2009 · letzter Beitrag vom 2. Nov 2009
 
guidok

Registriert seit: 28. Jun 2007
417 Beiträge
 
#1

VirtualStringTree: Speicherleck

  Alt 27. Okt 2009, 14:01
Hallo zusammen!

Ich habe mir gerade mal meine werdende Anwendung mit FastMM angeschaut und auch prompt Speicherlecks gemeldet bekommen.

Ich konnte mittlerweile auch einen VST als "Täter" identifizieren. Ich füge da mehrere Knoten mit Unterknoten mit Hilfe von "AddChild" von folgender Struktur ein:

Delphi-Quellcode:
  PNodeData = ^TNodeData;
  TNodeData = record
    Id: Integer; //Identifikation des Feldes
    AuthReq: Integer; //Benötigte Authorisierung;
    Text: String; //Beschriftung
  end;
Im Ereignis OnFreeNode des VST mache ich folgendes:

Delphi-Quellcode:
procedure TSettingsForm.vstFreeNode(Sender: TBaseVirtualTree;
  Node: PVirtualNode);
  var
    NodeData: PNodeData;
begin
  NodeData := vst.GetNodeData(Node);
  if Assigned(NodeData) then begin
    //NodeData^.Text := '';
    Finalize(NodeData^.Text);
  end;
end;
Sooooo. Die Speicherlecks werden damit schon einmal weniger, aber es sind durchaus noch welche vorhanden. Sobald ich alle Knoten des Trees einmal aufgeklappt habe, sind sie dann alle weg.

Ist das ein Fehler vom VST oder mache ich noch etwas falsch?


Edit:

Ich habe mir gerade überlegt, ob es etwas mit den "Initialisieren" der Knoten zu tun hat und habe im Quelltext des VST folgendes gefunden:

Zitat:
// AddChild is a compatibility method and will implicitly validate the parent node. This is however
// against the virtual paradigm and hence I dissuade from its usage.
Wenn nicht mit "AddChild", wie soll ich das sonst machen?
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz