From 6722fdaca230f79904c25e61090c5c2b99add9ab Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 4 Oct 2015 15:10:12 +0100 Subject: [PATCH] Free frame on error in SpectSeq::Load2. --- src/spectseq.cpp | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/spectseq.cpp b/src/spectseq.cpp index d00a0cd1..6e60e9fb 100644 --- a/src/spectseq.cpp +++ b/src/spectseq.cpp @@ -386,16 +386,28 @@ void SpectSeq::Load2(wxInputStream& stream, int import, int n) if(import==1) { - if(frame->Import(stream) != 0) break; + if(frame->Import(stream) != 0) + { + delete frame; + break; + } } else if(import==2) { - if(frame->ImportSPC2(stream,time_acc) != 0) break; + if(frame->ImportSPC2(stream,time_acc) != 0) + { + delete frame; + break; + } } else { - if(frame->Load(stream, file_format) != 0) break; + if(frame->Load(stream, file_format) != 0) + { + delete frame; + break; + } } frames[numframes++] = frame;