From d47d0614292801262faa2251d1de5f35b1d832aa Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Thu, 26 Oct 2017 07:32:36 +0000 Subject: fixed memory leak; fixed other potential problems git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@7645 90c681e8-e032-0410-971d-27865f9a5e38 --- src/plugins/Input/wavpack/decoderwavpackfactory.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src/plugins/Input/wavpack') diff --git a/src/plugins/Input/wavpack/decoderwavpackfactory.cpp b/src/plugins/Input/wavpack/decoderwavpackfactory.cpp index 4e9f2eb83..2d7da6167 100644 --- a/src/plugins/Input/wavpack/decoderwavpackfactory.cpp +++ b/src/plugins/Input/wavpack/decoderwavpackfactory.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2008-2016 by Ilya Kotov * + * Copyright (C) 2008-2017 by Ilya Kotov * * forkotov02@ya.ru * * * * This program is free software; you can redistribute it and/or modify * @@ -94,17 +94,17 @@ QList DecoderWavPackFactory::createPlayList(const QString &fileName, if (useMetaData) { cue_len = WavpackGetTagItem (ctx, "cuesheet", NULL, 0); - char *value; if (cue_len) { - value = (char*)malloc (cue_len * 2 + 1); + char *value = (char*)malloc (cue_len * 2 + 1); WavpackGetTagItem (ctx, "cuesheet", value, cue_len + 1); CUEParser parser(value, fileName); list = parser.createPlayList(); + delete info; + info = 0; } else { - char value[200]; memset(value,0,sizeof(value)); WavpackGetTagItem (ctx, "Album", value, sizeof(value)); @@ -130,7 +130,7 @@ QList DecoderWavPackFactory::createPlayList(const QString &fileName, } } - if (cue_len==0) + if (info) { info->setLength((int) WavpackGetNumSamples(ctx)/WavpackGetSampleRate(ctx)); list << info; -- cgit v1.2.3-13-gbd6f