summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2004-06-18 15:06:21 +0200
committerKlaus Schmidinger <vdr@tvdr.de>2004-06-18 15:06:21 +0200
commit480afc6bc8636b10849a9e61b73151e81b794f93 (patch)
treeccd310fa5aed7bcfe5ec4630599c2f4b6a61542b
parentf3ea26c74f534d4981e00adb58d0f4363131275f (diff)
downloadvdr-480afc6bc8636b10849a9e61b73151e81b794f93.tar.gz
vdr-480afc6bc8636b10849a9e61b73151e81b794f93.tar.bz2
Fixed a memory leak in theme description handling
-rw-r--r--CONTRIBUTORS1
-rw-r--r--HISTORY3
-rw-r--r--osd.c4
-rw-r--r--themes.c6
4 files changed, 9 insertions, 5 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 33b35d35..cf0a9c2d 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -720,6 +720,7 @@ Sascha Volkenandt <sascha@akv-soft.de>
for suggesting to allow drawing "transparent" texts
for suggesting to ignore unused "none" color entries in XPM files written by
some broken graphics tools
+ for fixing a memory leak in theme description handling
Malcolm Caldwell <malcolm.caldwell@ntu.edu.au>
for modifying LOF handling to allow for C-band reception
diff --git a/HISTORY b/HISTORY
index 74a40e9b..36761748 100644
--- a/HISTORY
+++ b/HISTORY
@@ -2893,7 +2893,7 @@ Video Disk Recorder Revision History
strings in order to avoid buffer overflows (thanks to Philip Lawatsch for
debugging a buffer overflow in eit.c).
-2004-06-13: Version 1.3.11
+2004-06-18: Version 1.3.11
- In order to avoid problems on NPTL systems, VDR now checks for the presence
of NPTL at program start, and if it is, exists and tells the user to do
@@ -2920,3 +2920,4 @@ Video Disk Recorder Revision History
Recordings.TriggerUpdate() to trigger an update of the list of recordings.
If some external tool manipulates the video directory, it can touch the file
'.update' in the video directory to trigger an update of the list of recordings.
+- Fixed a memory leak in theme description handling (thanks to Sascha Volkenandt).
diff --git a/osd.c b/osd.c
index bad03f3e..d87bee3e 100644
--- a/osd.c
+++ b/osd.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: osd.c 1.54 2004/06/12 13:59:12 kls Exp $
+ * $Id: osd.c 1.55 2004/06/15 20:29:42 kls Exp $
*/
#include "osd.h"
@@ -773,7 +773,7 @@ void cTextScroller::DrawText(void)
{
if (osd) {
for (int i = 0; i < shown; i++)
- osd->DrawText(left, top + i * font->Height(), textWrapper.GetLine(offset + i), colorFg, colorBg, font, width);
+ osd->DrawText(left, top + i * font->Height(), textWrapper.GetLine(offset + i), colorFg, colorBg, font, width);
}
}
diff --git a/themes.c b/themes.c
index 1b6adf9d..0a9b951d 100644
--- a/themes.c
+++ b/themes.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: themes.c 1.2 2004/05/22 10:30:06 kls Exp $
+ * $Id: themes.c 1.3 2004/06/18 15:05:07 kls Exp $
*/
#include "themes.h"
@@ -114,8 +114,10 @@ bool cTheme::Load(const char *FileName, bool OnlyDescriptions)
char *l = strchr(n, '.');
if (l)
lang = I18nLanguageIndex(++l);
- if (lang >= 0)
+ if (lang >= 0) {
+ free(descriptions[lang]);
descriptions[lang] = strdup(v);
+ }
else
error = "invalid language code";
}