[ANNOUNCE] VDR developer version 2.1.5

Message ID 53184DA0.4010703@tvdr.de
State New
Headers

Commit Message

Klaus Schmidinger March 6, 2014, 10:27 a.m. UTC
  On 06.03.2014 11:24, Andrey Pavlenko wrote:
> Hi,
>
> The build fails on Ubuntu Precise with error:
>
> ci.c: In member function 'void cCiDateTime::SendDateTime()':
> ci.c:867:18: error: expected primary-expression before '.' token
> ci.c:867:37: error: expected primary-expression before '.' token
> ci.c:867:67: error: expected primary-expression before '.' token
> ci.c:867:96: error: expected primary-expression before '.' token
> ci.c:867:125: error: expected primary-expression before '.' token
> ci.c: In member function 'virtual void cCiMMI::Process(int, const uint8_t*)':
> ci.c:1007:47: error: expected primary-expression before '.' token
> ci.c:1007:71: error: expected primary-expression before '.' token
>
> However, on Ubuntu Saucy and Trusty the build passes.

Do this to revert that change:



Klaus
  

Comments

Andrey Pavlenko March 6, 2014, 10:37 a.m. UTC | #1
Thanks, this patch fixes the error.


On Thu, Mar 6, 2014 at 2:27 PM, Klaus Schmidinger <Klaus.Schmidinger@tvdr.de
> wrote:

> On 06.03.2014 11:24, Andrey Pavlenko wrote:
>
>> Hi,
>>
>> The build fails on Ubuntu Precise with error:
>>
>> ci.c: In member function 'void cCiDateTime::SendDateTime()':
>> ci.c:867:18: error: expected primary-expression before '.' token
>> ci.c:867:37: error: expected primary-expression before '.' token
>> ci.c:867:67: error: expected primary-expression before '.' token
>> ci.c:867:96: error: expected primary-expression before '.' token
>> ci.c:867:125: error: expected primary-expression before '.' token
>> ci.c: In member function 'virtual void cCiMMI::Process(int, const
>> uint8_t*)':
>> ci.c:1007:47: error: expected primary-expression before '.' token
>> ci.c:1007:71: error: expected primary-expression before '.' token
>>
>> However, on Ubuntu Saucy and Trusty the build passes.
>>
>
> Do this to revert that change:
>
> --- ci.c        2014/02/08 12:25:55     3.11
> +++ ci.c        2014/02/25 09:59:55     3.12
> @@ -864,7 +864,7 @@
>  #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)) };
> +     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;
>       if (DumpDateTime)
> @@ -1004,7 +1004,7 @@
>                   case DCC_SET_MMI_MODE:
>                        if (l == 2 && *++d == MM_HIGH_LEVEL) {
>                           struct tDisplayReply { uint8_t id; uint8_t mode;
> };
> -                         tDisplayReply dr = { .id = DRI_MMI_MODE_ACK,
> .mode = MM_HIGH_LEVEL };
> +                         tDisplayReply dr = { id : DRI_MMI_MODE_ACK, mode
> : MM_HIGH_LEVEL };
>                           dbgprotocol("Slot %d: ==> Display Reply (%d)\n",
> Tc()->CamSlot()->SlotNumber(), SessionId());
>                           SendData(AOT_DISPLAY_REPLY, 2, (uint8_t *)&dr);
>
>                           }
>
>
> Klaus
>
> _______________________________________________
> vdr mailing list
> vdr@linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
>
  
Valdemaras Pipiras March 10, 2014, 7:38 a.m. UTC | #2
Still have problems after applying this patch on CentOS 64bit:


ci.c: In member function 'void cCiDateTime::SendDateTime()':
ci.c:867: error: 'mjd' was not declared in this scope
ci.c:867: error: 'h' was not declared in this scope
ci.c:867: error: 'm' was not declared in this scope
ci.c:867: error: 's' was not declared in this scope
ci.c:867: error: 'offset' was not declared in this scope
ci.c: In member function 'virtual void cCiMMI::Process(int, const
uint8_t*)':
ci.c:1007: error: 'id' was not declared in this scope
ci.c:1007: error: 'mode' was not declared in this scope
make: *** [ci.o] Error 1





On Thu, Mar 6, 2014 at 12:27 PM, Klaus Schmidinger <
Klaus.Schmidinger@tvdr.de> wrote:

> On 06.03.2014 11:24, Andrey Pavlenko wrote:
>
>> Hi,
>>
>> The build fails on Ubuntu Precise with error:
>>
>> ci.c: In member function 'void cCiDateTime::SendDateTime()':
>> ci.c:867:18: error: expected primary-expression before '.' token
>> ci.c:867:37: error: expected primary-expression before '.' token
>> ci.c:867:67: error: expected primary-expression before '.' token
>> ci.c:867:96: error: expected primary-expression before '.' token
>> ci.c:867:125: error: expected primary-expression before '.' token
>> ci.c: In member function 'virtual void cCiMMI::Process(int, const
>> uint8_t*)':
>> ci.c:1007:47: error: expected primary-expression before '.' token
>> ci.c:1007:71: error: expected primary-expression before '.' token
>>
>> However, on Ubuntu Saucy and Trusty the build passes.
>>
>
> Do this to revert that change:
>
> --- ci.c        2014/02/08 12:25:55     3.11
> +++ ci.c        2014/02/25 09:59:55     3.12
> @@ -864,7 +864,7 @@
>  #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)) };
> +     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;
>       if (DumpDateTime)
> @@ -1004,7 +1004,7 @@
>                   case DCC_SET_MMI_MODE:
>                        if (l == 2 && *++d == MM_HIGH_LEVEL) {
>                           struct tDisplayReply { uint8_t id; uint8_t mode;
> };
> -                         tDisplayReply dr = { .id = DRI_MMI_MODE_ACK,
> .mode = MM_HIGH_LEVEL };
> +                         tDisplayReply dr = { id : DRI_MMI_MODE_ACK, mode
> : MM_HIGH_LEVEL };
>                           dbgprotocol("Slot %d: ==> Display Reply (%d)\n",
> Tc()->CamSlot()->SlotNumber(), SessionId());
>                           SendData(AOT_DISPLAY_REPLY, 2, (uint8_t *)&dr);
>
>                           }
>
>
> Klaus
>
> _______________________________________________
> vdr mailing list
> vdr@linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
>
  
Klaus Schmidinger March 10, 2014, 10:22 a.m. UTC | #3
On 10.03.2014 08:38, Valdemaras Pipiras wrote:
> Still have problems after applying this patch on CentOS 64bit:
>
>
> ci.c: In member function 'void cCiDateTime::SendDateTime()':
> ci.c:867: error: 'mjd' was not declared in this scope
> ci.c:867: error: 'h' was not declared in this scope
> ci.c:867: error: 'm' was not declared in this scope
> ci.c:867: error: 's' was not declared in this scope
> ci.c:867: error: 'offset' was not declared in this scope
> ci.c: In member function 'virtual void cCiMMI::Process(int, const uint8_t*)':
> ci.c:1007: error: 'id' was not declared in this scope
> ci.c:1007: error: 'mode' was not declared in this scope
> make: *** [ci.o] Error 1

Try using the version of ci.c that came with VDR 2.1.4.

Klaus
  
Valdemaras Pipiras March 10, 2014, 2:48 p.m. UTC | #4
Yes, it works with the version from 2.1.4





On Mon, Mar 10, 2014 at 12:22 PM, Klaus Schmidinger <
Klaus.Schmidinger@tvdr.de> wrote:

> On 10.03.2014 08:38, Valdemaras Pipiras wrote:
>
>> Still have problems after applying this patch on CentOS 64bit:
>>
>>
>> ci.c: In member function 'void cCiDateTime::SendDateTime()':
>> ci.c:867: error: 'mjd' was not declared in this scope
>> ci.c:867: error: 'h' was not declared in this scope
>> ci.c:867: error: 'm' was not declared in this scope
>> ci.c:867: error: 's' was not declared in this scope
>> ci.c:867: error: 'offset' was not declared in this scope
>> ci.c: In member function 'virtual void cCiMMI::Process(int, const
>> uint8_t*)':
>> ci.c:1007: error: 'id' was not declared in this scope
>> ci.c:1007: error: 'mode' was not declared in this scope
>> make: *** [ci.o] Error 1
>>
>
> Try using the version of ci.c that came with VDR 2.1.4.
>
>
> Klaus
>
> _______________________________________________
> vdr mailing list
> vdr@linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
>
  

Patch

--- ci.c        2014/02/08 12:25:55     3.11
+++ ci.c        2014/02/25 09:59:55     3.12
@@ -864,7 +864,7 @@ 
  #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)) };
+     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;
       if (DumpDateTime)
@@ -1004,7 +1004,7 @@ 
                   case DCC_SET_MMI_MODE:
                        if (l == 2 && *++d == MM_HIGH_LEVEL) {
                           struct tDisplayReply { uint8_t id; uint8_t mode; };
-                         tDisplayReply dr = { .id = DRI_MMI_MODE_ACK, .mode = MM_HIGH_LEVEL };
+                         tDisplayReply dr = { id : DRI_MMI_MODE_ACK, mode : MM_HIGH_LEVEL };
                           dbgprotocol("Slot %d: ==> Display Reply (%d)\n", Tc()->CamSlot()->SlotNumber(), SessionId());
                           SendData(AOT_DISPLAY_REPLY, 2, (uint8_t *)&dr);
                           }