mkvtoolnix: rebuild against boost-1.69.0

This commit is contained in:
John 2018-12-12 12:13:09 +01:00 committed by maxice8
parent f2168b0a57
commit f76d905d31
No known key found for this signature in database
GPG key ID: 543B9D4F4299F06B
2 changed files with 76 additions and 1 deletions

View file

@ -0,0 +1,75 @@
From 8383780e4ad9bc3e475f06e9485486b8b7d993d3 Mon Sep 17 00:00:00 2001
From: Moritz Bunkus <moritz@bunkus.org>
Date: Sat, 15 Dec 2018 19:20:49 +0100
Subject: [PATCH] fix compilation with Boost 1.69.0
In 1.69.0 the `boost::tribool` class's `operator bool` was made
explicit. This means that using a `boost::tribool` as the return value
in a function returning a `bool` requires an explicit cast.
Fixes #2460.
---
NEWS.md | 5 +++++
src/common/debugging.h | 2 +-
src/input/r_matroska.cpp | 2 +-
src/output/p_avc_es.cpp | 2 +-
4 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/NEWS.md b/NEWS.md
index dcc24e3e9..94e1ddcec 100644
--- NEWS.md
+++ NEWS.md
@@ -5,6 +5,11 @@
* MKVToolNix GUI: multiplexer: the predefined split sizes and durations can
now be customized in the preferences.
+## Bug fixes
+
+* source code: fixed compilation with Boost 1.69.0 after API-breaking change
+ to the `boost::tribool` class. Fixes #2460.
+
# Version 29.0.0 "Like It Or Not" 2018-12-01
diff --git a/src/common/debugging.h b/src/common/debugging.h
index 629f07fde..b898e2b72 100644
--- src/common/debugging.h
+++ src/common/debugging.h
@@ -57,7 +57,7 @@ class debugging_option_c {
if (boost::logic::indeterminate(m_requested))
m_requested = debugging_c::requested(m_option);
- return m_requested;
+ return static_cast<bool>(m_requested);
}
};
diff --git a/src/input/r_matroska.cpp b/src/input/r_matroska.cpp
index 0617d79db..2918b2ea1 100644
--- src/input/r_matroska.cpp
+++ src/input/r_matroska.cpp
@@ -1684,7 +1684,7 @@ kax_reader_c::set_packetizer_headers(kax_track_t *t) {
PTZR(t->ptzr)->set_track_forced_flag(true);
if (boost::logic::indeterminate(PTZR(t->ptzr)->m_ti.m_enabled_track))
- PTZR(t->ptzr)->set_track_enabled_flag(t->enabled_track);
+ PTZR(t->ptzr)->set_track_enabled_flag(static_cast<bool>(t->enabled_track));
if ((0 != t->track_uid) && !PTZR(t->ptzr)->set_uid(t->track_uid))
mxwarn(fmt::format(Y("matroska_reader: Could not keep the track UID {0} because it is already allocated for the new file.\n"), t->track_uid));
diff --git a/src/output/p_avc_es.cpp b/src/output/p_avc_es.cpp
index becdf81d6..ede163dc3 100644
--- src/output/p_avc_es.cpp
+++ src/output/p_avc_es.cpp
@@ -46,7 +46,7 @@ avc_es_video_packetizer_c(generic_reader_c *p_reader,
set_codec_id(MKV_V_MPEG4_AVC);
m_parser.set_keep_ar_info(false);
- m_parser.set_fix_bitstream_frame_rate(m_ti.m_fix_bitstream_frame_rate);
+ m_parser.set_fix_bitstream_frame_rate(static_cast<bool>(m_ti.m_fix_bitstream_frame_rate));
// If no external timestamp file has been specified then mkvmerge
// might have created a factory due to the --default-duration
--
2.18.1

View file

@ -1,7 +1,7 @@
# Template file for 'mkvtoolnix'
pkgname=mkvtoolnix
version=29.0.0
revision=1
revision=2
build_style=gnu-configure
configure_args="--with-docbook-xsl-root=/usr/share/xsl/docbook --enable-qt"
hostmakedepends="autoconf docbook-xsl libxslt pkg-config ruby"