diff options
Diffstat (limited to 'recording.c')
-rw-r--r-- | recording.c | 8 |
1 files changed, 4 insertions, 4 deletions
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++; } } |