diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 64e71857..a7300d2a 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -190,11 +190,10 @@ Stefan Huelswitt for fixing handling of pmAudioOnlyBlack for pointing out possible race conditions in handling childTid in cThread for fixing a possible race condition in cDevice::Action() and cTSBuffer::Action() - for reporting a memory leak in AddDirectory() and strescape() + for reporting several memory leaks that were introduced through the use of cString Ulrich Röder - for pointing out that there are channels that have a symbol rate higher than - 27500 + for pointing out that there are channels that have a symbol rate higher than 27500 for his support in keeping the Premiere World channels up to date in 'channels.conf' Mel Schächner diff --git a/HISTORY b/HISTORY index fd4d1e5a..61c1393a 100644 --- a/HISTORY +++ b/HISTORY @@ -3355,8 +3355,6 @@ Video Disk Recorder Revision History recording (thanks to Sascha Volkenandt for reporting a problem when starting replay of a recording that has no Dolby Digital audio after switching to a channel that has DD and selecting the DD audio track). -- Fixed a memory leak in AddDirectory() and strescape() (thanks to Stefan Huelswitt - for reporting these). - Completed the Danish OSD texts (thanks to Mogens Elneff). - Completed the French OSD texts (thanks to Olivier Jacques). - The new setup option "OSD/Channel info time" can be used to define the time after @@ -3364,3 +3362,5 @@ Video Disk Recorder Revision History Olivier Jacques). - Modified cDolbyRepacker to make sure PES packets don't exceed the requested length (thanks to Reinhard Nissl). +- Fixed several memory leaks that were introduced through the use of cString (thanks + to Stefan Huelswitt for reporting these). diff --git a/channels.c b/channels.c index 5c0456b6..dd230dae 100644 --- a/channels.c +++ b/channels.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: channels.c 1.34 2005/01/16 13:49:30 kls Exp $ + * $Id: channels.c 1.35 2005/02/06 09:44:53 kls Exp $ */ #include "channels.h" @@ -640,7 +640,7 @@ cString cChannel::ToText(const cChannel *Channel) *q = 0; asprintf(&buffer, "%s:%d:%s:%s:%d:%s:%s:%d:%s:%d:%d:%d:%d\n", FullName, Channel->frequency, *Channel->ParametersToString(), *cSource::ToString(Channel->source), Channel->srate, vpidbuf, apidbuf, Channel->tpid, caidbuf, Channel->sid, Channel->nid, Channel->tid, Channel->rid); } - return buffer; + return cString(buffer, true); } cString cChannel::ToText(void) const diff --git a/recording.c b/recording.c index 7ba93b32..c6460f27 100644 --- a/recording.c +++ b/recording.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: recording.c 1.94 2004/12/26 11:55:24 kls Exp $ + * $Id: recording.c 1.95 2005/02/06 09:46:31 kls Exp $ */ #include "recording.h" @@ -719,7 +719,7 @@ cString cMark::ToText(void) { char *buffer; asprintf(&buffer, "%s%s%s\n", *IndexToHMSF(position, true), comment ? " " : "", comment ? comment : ""); - return buffer; + return cString(buffer, true); } bool cMark::Parse(const char *s) diff --git a/timers.c b/timers.c index 96a2cc91..9edc6c3b 100644 --- a/timers.c +++ b/timers.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: timers.c 1.21 2004/12/26 12:35:33 kls Exp $ + * $Id: timers.c 1.22 2005/02/06 09:45:52 kls Exp $ */ #include "timers.h" @@ -112,7 +112,7 @@ cString cTimer::ToText(bool UseChannelID) asprintf(&buffer, "%d:%s:%s:%04d:%04d:%d:%d:%s:%s\n", flags, UseChannelID ? *Channel()->GetChannelID().ToString() : *itoa(Channel()->Number()), *PrintDay(day, firstday), start, stop, priority, lifetime, file, summary ? summary : ""); strreplace(summary, '|', '\n'); strreplace(file, '|', ':'); - return buffer; + return cString(buffer, true); } int cTimer::TimeToInt(int t)