diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2014-01-22 09:44:30 +0100 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2014-01-22 09:44:30 +0100 |
commit | c7316989f5a911796846c15ebdd7f645739fe4ad (patch) | |
tree | a7750ed5733cb5f200b682191176ffb631400da6 | |
parent | bc89bda239a233dc62f16977af68f9dba234fcd4 (diff) | |
download | vdr-c7316989f5a911796846c15ebdd7f645739fe4ad.tar.gz vdr-c7316989f5a911796846c15ebdd7f645739fe4ad.tar.bz2 |
Fixed a wrong alignment in cCiDateTime::SendDateTime()
-rw-r--r-- | HISTORY | 1 | ||||
-rw-r--r-- | ci.c | 4 |
2 files changed, 4 insertions, 1 deletions
@@ -7876,3 +7876,4 @@ Video Disk Recorder Revision History - Increased MIN_TS_PACKETS_FOR_FRAME_DETECTOR to 10 in order to be able to record channels that need more than 5 TS packets for detecting frame borders (reported by Eike Sauer). +- Fixed a wrong alignment in cCiDateTime::SendDateTime(). @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: ci.c 2.12 2013/02/17 13:17:28 kls Exp $ + * $Id: ci.c 2.12.1.1 2014/01/22 09:43:48 kls Exp $ */ #include "ci.h" @@ -846,7 +846,9 @@ void cCiDateTime::SendDateTime(void) int L = (M == 1 || M == 2) ? 1 : 0; int MJD = 14956 + D + int((Y - L) * 365.25) + int((M + 1 + L * 12) * 30.6001); #define DEC2BCD(d) uint8_t(((d / 10) << 4) + (d % 10)) +#pragma pack(1) struct tTime { uint16_t mjd; uint8_t h, m, s; short offset; }; +#pragma pack() tTime T = { mjd : htons(MJD), h : DEC2BCD(tm_gmt.tm_hour), m : DEC2BCD(tm_gmt.tm_min), s : DEC2BCD(tm_gmt.tm_sec), offset : short(htons(tm_loc.tm_gmtoff / 60)) }; bool OldDumpTPDUDataTransfer = DumpTPDUDataTransfer; DumpTPDUDataTransfer &= DumpDateTime; |