peterjazenga / newac

Automatically exported from code.google.com/p/newac

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

An unexpected memory leak has occurred

GoogleCodeExporter opened this issue · comments

if you open a file several times, without destroying the component, for example 
here:
var
  MP3In: TMP3In;
  TotalSamples1, TotalSamples2: Cardinal;
begin
  MP3In := TMP3In.Create(nil);

  MP3In.FileName := FileName1;
  TotalSamples1 := MP3In.TotalSamples;

  MP3In.FileName := FileName2;
  TotalSamples2 := MP3In.TotalSamples;

  MP3In.Free;
end;

---------------------------
Unexpected Memory Leak
---------------------------
An unexpected memory leak has occurred. The unexpected small block leaks are:

21 - 28 bytes: TAudioStream x 1

---------------------------
ОК   
---------------------------


problem in unit libwma1.pas

   procedure lwma_reader_free(var sync_reader : wma_sync_reader);
   begin
     sync_reader.reader.Close;
      if sync_reader.buffer <> nil then
        sync_reader.buffer := nil;
     sync_reader.reader := nil;
     sync_reader.HeaderInfo := nil;
     sync_reader.AudioStream := nil;   <=======
     sync_reader.AudioStream.Free;     <======= 
     sync_reader.AudioStream := nil;   <=======
   end;

Original issue reported on code.google.com by b...@vega.com.ua on 16 Dec 2014 at 9:37