From 6f95a495ab5ca6c5fe6a9695b762d250795fce54 Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Tue, 7 May 2019 09:26:40 +0200 Subject: Fixed a compiler warning in cIndexFile::ConvertToPes() and added __attribute__((packed)) to tIndexPes and tIndexTs --- recording.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'recording.c') diff --git a/recording.c b/recording.c index b6edb821..53788580 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 4.25 2019/05/06 11:26:06 kls Exp $ + * $Id: recording.c 4.26 2019/05/07 09:22:34 kls Exp $ */ #include "recording.h" @@ -2498,14 +2498,14 @@ void cIndexFileGenerator::Action(void) #define MAXINDEXCATCHUP 8 // number of retries #define INDEXCATCHUPWAIT 100 // milliseconds -struct tIndexPes { +struct __attribute__((packed)) tIndexPes { uint32_t offset; uchar type; uchar number; uint16_t reserved; }; -struct tIndexTs { +struct __attribute__((packed)) tIndexTs { uint64_t offset:40; // up to 1TB per file (not using off_t here - must definitely be exactly 64 bit!) int reserved:7; // reserved for future use int independent:1; // marks frames that can be displayed by themselves (for trick modes) @@ -2640,7 +2640,7 @@ void cIndexFile::ConvertToPes(tIndexTs *IndexTs, int Count) IndexPes.type = uchar(IndexTs->independent ? 1 : 2); // I_FRAME : "not I_FRAME" (exact frame type doesn't matter) IndexPes.number = uchar(IndexTs->number); IndexPes.reserved = 0; - memcpy(IndexTs, &IndexPes, sizeof(*IndexTs)); + memcpy((void *)IndexTs, &IndexPes, sizeof(*IndexTs)); IndexTs++; } } -- cgit v1.2.3