Control: tags 984382 + patch
Control: tags 984382 + pending

Dear maintainer,

I've prepared an NMU for vdr (versioned as 2.4.1-4.2) and uploaded
it to DELAYED/7. Please feel free to tell me if I should cancel it.

cu
Adrian
diff -Nru vdr-2.4.1/debian/changelog vdr-2.4.1/debian/changelog
--- vdr-2.4.1/debian/changelog	2020-07-19 20:22:51.000000000 +0300
+++ vdr-2.4.1/debian/changelog	2021-11-23 19:13:46.000000000 +0200
@@ -1,3 +1,10 @@
+vdr (2.4.1-4.2) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Add upstream fixes for gcc 11. (Closes: #984382)
+
+ -- Adrian Bunk <b...@debian.org>  Tue, 23 Nov 2021 19:13:46 +0200
+
 vdr (2.4.1-4.1) unstable; urgency=medium
 
   * Non-maintainer upload.
diff -Nru vdr-2.4.1/debian/patches/0001-Fixed-checking-the-return-value-of-the-Open-call-in-.patch vdr-2.4.1/debian/patches/0001-Fixed-checking-the-return-value-of-the-Open-call-in-.patch
--- vdr-2.4.1/debian/patches/0001-Fixed-checking-the-return-value-of-the-Open-call-in-.patch	1970-01-01 02:00:00.000000000 +0200
+++ vdr-2.4.1/debian/patches/0001-Fixed-checking-the-return-value-of-the-Open-call-in-.patch	2021-11-23 19:13:46.000000000 +0200
@@ -0,0 +1,28 @@
+From 515e34727df9aad10f91af8f359cbf65255ab341 Mon Sep 17 00:00:00 2001
+From: Klaus Schmidinger <v...@tvdr.de>
+Date: Wed, 16 Sep 2020 13:30:59 +0200
+Subject: Fixed checking the return value of the Open() call in
+ cFileName::SetOffset()
+
+---
+ recording.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/recording.c b/recording.c
+index 810ef809..045f14ed 100644
+--- a/recording.c
++++ b/recording.c
+@@ -3025,8 +3025,8 @@ cUnbufferedFile *cFileName::SetOffset(int Number, off_t Offset)
+            }
+         // found a non existing file suffix
+         }
+-     if (Open() >= 0) {
+-        if (!record && Offset >= 0 && file && file->Seek(Offset, SEEK_SET) != Offset) {
++     if (Open()) {
++        if (!record && Offset >= 0 && file->Seek(Offset, SEEK_SET) != Offset) {
+            LOG_ERROR_STR(fileName);
+            return NULL;
+            }
+-- 
+2.20.1
+
diff -Nru vdr-2.4.1/debian/patches/0002-Now-using-__cplusplus-instead-of-DISABLE_TEMPLATES_C.patch vdr-2.4.1/debian/patches/0002-Now-using-__cplusplus-instead-of-DISABLE_TEMPLATES_C.patch
--- vdr-2.4.1/debian/patches/0002-Now-using-__cplusplus-instead-of-DISABLE_TEMPLATES_C.patch	1970-01-01 02:00:00.000000000 +0200
+++ vdr-2.4.1/debian/patches/0002-Now-using-__cplusplus-instead-of-DISABLE_TEMPLATES_C.patch	2021-11-23 19:13:46.000000000 +0200
@@ -0,0 +1,49 @@
+From 6ead2ee35e94e70fc464f48e69d6d06371fbd9af Mon Sep 17 00:00:00 2001
+From: Klaus Schmidinger <v...@tvdr.de>
+Date: Wed, 26 May 2021 13:37:53 +0200
+Subject: Now using __cplusplus instead of
+ DISABLE_TEMPLATES_COLLIDING_WITH_STL, and using std::min(), std::max() and
+ std::swap() if available
+
+---
+ tools.h | 20 +++++++++++---------
+ 1 file changed, 11 insertions(+), 9 deletions(-)
+
+diff --git a/tools.h b/tools.h
+index 614130d0..6a016c70 100644
+--- a/tools.h
++++ b/tools.h
+@@ -51,19 +51,21 @@ template<class T> inline void DELETENULL(T *&p) { T *q = p; p = NULL; delete q;
+ #define CHECK(s) { if ((s) < 0) LOG_ERROR; } // used for 'ioctl()' calls
+ #define FATALERRNO (errno && errno != EAGAIN && errno != EINTR)
+ 
+-// In case some plugin needs to use the STL and gets an error message regarding one
+-// of these functions, you can #define DISABLE_TEMPLATES_COLLIDING_WITH_STL before
+-// including tools.h.
+-#if !defined(__STL_CONFIG_H) // for old versions of the STL
+-#if !defined(DISABLE_TEMPLATES_COLLIDING_WITH_STL) && !defined(_STL_ALGOBASE_H)
++#if __cplusplus >= 201103L
++// any gcc >= 4.8.1; we have swap, min, max
++#include <algorithm> // std::min, std::max, (c++98: also swap)
++#include <utility> // std::swap (since c++11)
++using std::min;
++using std::max;
++using std::swap;
++#else
++// no c++11 and old compiler, let's include our own templates
+ template<class T> inline T min(T a, T b) { return a <= b ? a : b; }
+ template<class T> inline T max(T a, T b) { return a >= b ? a : b; }
+-#endif
+-template<class T> inline int sgn(T a) { return a < 0 ? -1 : a > 0 ? 1 : 0; }
+-#if !defined(DISABLE_TEMPLATES_COLLIDING_WITH_STL) && !defined(_MOVE_H)
+ template<class T> inline void swap(T &a, T &b) { T t = a; a = b; b = t; }
+ #endif
+-#endif
++
++template<class T> inline int sgn(T a) { return a < 0 ? -1 : a > 0 ? 1 : 0; }
+ 
+ template<class T> inline T constrain(T v, T l, T h) { return v < l ? l : v > h ? h : v; }
+ 
+-- 
+2.20.1
+
diff -Nru vdr-2.4.1/debian/patches/series vdr-2.4.1/debian/patches/series
--- vdr-2.4.1/debian/patches/series	2020-07-19 20:22:51.000000000 +0300
+++ vdr-2.4.1/debian/patches/series	2021-11-23 19:13:40.000000000 +0200
@@ -7,3 +7,5 @@
 use-cpp-flags.patch
 configurable-pkg-config.patch
 glibc-stime.patch
+0001-Fixed-checking-the-return-value-of-the-Open-call-in-.patch
+0002-Now-using-__cplusplus-instead-of-DISABLE_TEMPLATES_C.patch

Reply via email to