1
0
mirror of https://github.com/VDR4Arch/vdr.git synced 2023-10-10 13:36:52 +02:00

Fixed a possible access to uninitialized data in cEIT::cEIT()

This commit is contained in:
Klaus Schmidinger 2013-11-03 14:02:01 +01:00
parent 0b5085f4f0
commit 39f6b6fc6b
3 changed files with 6 additions and 3 deletions

View File

@ -2919,6 +2919,7 @@ Henning Heinold <heinold@inf.fu-berlin.de>
Dominik Strasser <dominik@die-strassers.de> Dominik Strasser <dominik@die-strassers.de>
for making a cRemote be removed from the Remotes list in case its initialization failed for making a cRemote be removed from the Remotes list in case its initialization failed
for reporting a possible access to uninitialized data in cEIT::cEIT()
Joerg Bornkessel <hd_brummy@gentoo.org> Joerg Bornkessel <hd_brummy@gentoo.org>
for adding LDFLAGS to the linker calls in the Makefiles for adding LDFLAGS to the linker calls in the Makefiles

View File

@ -8051,3 +8051,5 @@ Video Disk Recorder Revision History
- In the "Select folder" menu pressing Ok now selects the folder, even if this is a - In the "Select folder" menu pressing Ok now selects the folder, even if this is a
folder that contains sub folders (marked with "..."). To open such a folder you folder that contains sub folders (marked with "..."). To open such a folder you
can press the Red key. can press the Red key.
- Fixed a possible access to uninitialized data in cEIT::cEIT() (reported by Dominik
Strasser).

6
eit.c
View File

@ -8,7 +8,7 @@
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>. * Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
* Adapted to 'libsi' for VDR 1.3.0 by Marcel Wiesweg <marcel.wiesweg@gmx.de>. * Adapted to 'libsi' for VDR 1.3.0 by Marcel Wiesweg <marcel.wiesweg@gmx.de>.
* *
* $Id: eit.c 3.2 2013/10/12 11:10:11 kls Exp $ * $Id: eit.c 3.3 2013/11/03 13:55:00 kls Exp $
*/ */
#include "eit.h" #include "eit.h"
@ -54,8 +54,8 @@ cEIT::cEIT(cSchedules *Schedules, int Source, u_char Tid, const u_char *Data, bo
bool Modified = false; bool Modified = false;
time_t SegmentStart = 0; time_t SegmentStart = 0;
time_t SegmentEnd = 0; time_t SegmentEnd = 0;
struct tm tm_r; struct tm t = { 0 };
struct tm t = *localtime_r(&Now, &tm_r); // this initializes the time zone in 't' localtime_r(&Now, &t); // this initializes the time zone in 't'
SI::EIT::Event SiEitEvent; SI::EIT::Event SiEitEvent;
for (SI::Loop::Iterator it; eventLoop.getNext(SiEitEvent, it); ) { for (SI::Loop::Iterator it; eventLoop.getNext(SiEitEvent, it); ) {