File vdr-2.2.0-gcc7.diff of Package vdr

Index: b/dvbdevice.c
===================================================================
--- a/dvbdevice.c
+++ b/dvbdevice.c
@@ -819,13 +819,13 @@ bool cDvbTuner::SetFrontend(void)
 
   SETCMD(DTV_DELIVERY_SYSTEM, frontendType);
   if (frontendType == SYS_DVBS || frontendType == SYS_DVBS2) {
-     unsigned int frequency = channel.Frequency();
+     int frequency = channel.Frequency();
      if (Setup.DiSEqC) {
         if (const cDiseqc *diseqc = Diseqcs.Get(device->CardIndex() + 1, channel.Source(), frequency, dtp.Polarization(), &scr)) {
            frequency -= diseqc->Lof();
            if (diseqc != lastDiseqc || diseqc->IsScr() || diseqc->Position() >= 0 && channel.Source() != lastSource) {
               if (IsBondedMaster()) {
-                 ExecuteDiseqc(diseqc, &frequency);
+                 ExecuteDiseqc(diseqc, (unsigned int *)&frequency);
                  if (frequency == 0)
                     return false;
                  }
@@ -842,7 +842,7 @@ bool cDvbTuner::SetFrontend(void)
         }
      else {
         int tone = SEC_TONE_OFF;
-        if (frequency < (unsigned int)Setup.LnbSLOF) {
+        if (frequency < Setup.LnbSLOF) {
            frequency -= Setup.LnbFrequLo;
            tone = SEC_TONE_OFF;
            }
Index: b/osdbase.c
===================================================================
--- a/osdbase.c
+++ b/osdbase.c
@@ -506,7 +506,7 @@ eOSState cOsdMenu::HotKey(eKeys Key)
       const char *s = item->Text();
       i = 0;
       item_nr = 0;
-      if (s && (s = skipspace(s)) != '\0' && '0' <= s[i] && s[i] <= '9') {
+      if (s && (s = skipspace(s))[0] != '\0' && '0' <= s[i] && s[i] <= '9') {
          do {
             item_nr = item_nr * 10 + (s[i] - '0');
             }
Index: b/remux.c
===================================================================
--- a/remux.c
+++ b/remux.c
@@ -1552,11 +1552,11 @@ int cFrameDetector::Analyze(const uchar
                        uint32_t Delta = ptsValues[0] / Div;
                        // determine frame info:
                        if (isVideo) {
-                          if (abs(Delta - 3600) <= 1)
+                          if (abs((int32_t)Delta - 3600) <= 1)
                              framesPerSecond = 25.0;
                           else if (Delta % 3003 == 0)
                              framesPerSecond = 30.0 / 1.001;
-                          else if (abs(Delta - 1800) <= 1)
+                          else if (abs((int32_t)Delta - 1800) <= 1)
                              framesPerSecond = 50.0;
                           else if (Delta == 1501)
                              framesPerSecond = 60.0 / 1.001;
openSUSE Build Service is sponsored by