Update to 3.0.4

el8
leigh123linux 6 years ago
parent e8e5e3d007
commit 0e7c0886ef

@ -1,28 +0,0 @@
From 39b0590165501cdeb85595a19bf076d06bcc594c Mon Sep 17 00:00:00 2001
From: Dominique Leuenberger <dimstar@opensuse.org>
Date: Thu, 17 May 2018 17:40:37 +0200
Subject: [PATCH] qt: fix build against Qt 5.11
Qt 5.11 is in RC phase now, and some headers need to be explicitly
included in order to build successfully.
Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
---
modules/gui/qt/components/simple_preferences.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/modules/gui/qt/components/simple_preferences.cpp b/modules/gui/qt/components/simple_preferences.cpp
index b48ea7b67f..7a9c2dbf28 100644
--- a/modules/gui/qt/components/simple_preferences.cpp
+++ b/modules/gui/qt/components/simple_preferences.cpp
@@ -36,6 +36,7 @@
#include <QString>
#include <QFont>
#include <QToolButton>
+#include <QButtonGroup>
#include <QSignalMapper>
#include <QVBoxLayout>
#include <QScrollArea>
--
2.11.0

@ -1,62 +0,0 @@
From 33849a7fc3a948da2ddd6a96533e057583ef8e54 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan <ofourdan@redhat.com>
Date: Tue, 31 Jul 2018 10:55:45 +0200
Subject: [PATCH] Qt: Fix tooltip position
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit
commit 5815534 ("qt: make the time tooltip a tooltip") reintroduced the
bug fixed by previous commit ea99237 ("remove X11BypassWindowManagerHint
from time tooltip") meant to fix #17829.
The tooltip window is a shaped, override-redirect window which shows
when the pointer enters the slider and disappears when it leaves the
slider.
By placing the tooltip window too low, above the slider, vlc causes a
constant map/unmap of that window which will flood Xwayland and the
Wayland compositori.window manager and can up with a deadlock situation.
When the tooltip window is showing, the pointer will enter the tooltip
window and thus leave the slider, which will cause the tooltip to be
unmapped, which in turn causes the pointer to re-enter the slider area,
which will cause the tooltip to show again, so on and so forth.
On Wayland/Xwayland where the Wayland compositor (i.e. the display
server) is also the window manager, that can lead to a deadlock
situation because some X11 requests are blocking on rountrips to the
Xserver, which in the case of Xwayland is also a Wayland client, waiting
on the Wayland compositor for some operations, the Wayland compositor
being also a Window manager and an X11 client at the same time...
Avoid the issue by placing the tooltip so that it does not show up at
the same location where the slider is, without overlap, to avoid that
map/unmap requests storm.
Closes: https://gitlab.gnome.org/GNOME/mutter/issues/244
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Signed-off-by: Hugo Beauzée-Luyssen <hugo@beauzee.fr>
(cherry picked from commit 6579a36c56ed30b72de584bf0e8cf21af1a90cf7)
Signed-off-by: Hugo Beauzée-Luyssen <hugo@beauzee.fr>
---
modules/gui/qt/util/timetooltip.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules/gui/qt/util/timetooltip.cpp b/modules/gui/qt/util/timetooltip.cpp
index 1314b520ea..7a63a9d7d9 100644
--- a/modules/gui/qt/util/timetooltip.cpp
+++ b/modules/gui/qt/util/timetooltip.cpp
@@ -73,7 +73,7 @@ void TimeTooltip::adjustPosition()
#if defined( Q_OS_WIN )
mTarget.y() - 2 * size.height() - TIP_HEIGHT / 2 );
#else
- mTarget.y() - size.height() + TIP_HEIGHT / 2 );
+ mTarget.y() - size.height() - TIP_HEIGHT / 2 );
#endif
// Keep the tooltip on the same screen if possible
--
2.11.0

@ -1,69 +0,0 @@
X-Git-Url: https://git.videolan.org/?p=vlc.git;a=blobdiff_plain;f=modules%2Ftext_renderer%2Ffreetype%2Ftext_layout.c;h=1a28786d097959e246b85913eef82f78013d4108;hp=13efd567b46a30bb159c974a4c12e603275cb1c8;hb=26e2d3906658c30f2f88f4b1bc9630ec43bf5525;hpb=f391a2a3b0410a4361ca0b93209b6e5ec79ff918
diff --git a/modules/text_renderer/freetype/text_layout.c b/modules/text_renderer/freetype/text_layout.c
index 13efd567b4..1a28786d09 100644
--- a/modules/text_renderer/freetype/text_layout.c
+++ b/modules/text_renderer/freetype/text_layout.c
@@ -153,6 +153,9 @@ typedef struct paragraph_t
#ifdef HAVE_FRIBIDI
FriBidiCharType *p_types;
+#if FRIBIDI_MAJOR_VERSION >= 1
+ FriBidiBracketType *p_btypes;
+#endif
FriBidiLevel *p_levels;
FriBidiStrIndex *pi_reordered_indices;
FriBidiParType paragraph_type;
@@ -361,6 +364,9 @@ static paragraph_t *NewParagraph( filter_t *p_filter,
#ifdef HAVE_FRIBIDI
p_paragraph->p_levels = vlc_alloc( i_size, sizeof( *p_paragraph->p_levels ) );
p_paragraph->p_types = vlc_alloc( i_size, sizeof( *p_paragraph->p_types ) );
+#if FRIBIDI_MAJOR_VERSION >= 1
+ p_paragraph->p_btypes = vlc_alloc( i_size, sizeof( *p_paragraph->p_btypes ) );
+#endif
p_paragraph->pi_reordered_indices =
vlc_alloc( i_size, sizeof( *p_paragraph->pi_reordered_indices ) );
@@ -398,6 +404,9 @@ error:
#ifdef HAVE_FRIBIDI
if( p_paragraph->p_levels ) free( p_paragraph->p_levels );
if( p_paragraph->p_types ) free( p_paragraph->p_types );
+#if FRIBIDI_MAJOR_VERSION >= 1
+ if( p_paragraph->p_btypes ) free( p_paragraph->p_btypes );
+#endif
if( p_paragraph->pi_reordered_indices )
free( p_paragraph->pi_reordered_indices );
#endif
@@ -424,6 +433,9 @@ static void FreeParagraph( paragraph_t *p_paragraph )
#ifdef HAVE_FRIBIDI
free( p_paragraph->pi_reordered_indices );
free( p_paragraph->p_types );
+#if FRIBIDI_MAJOR_VERSION >= 1
+ free( p_paragraph->p_btypes );
+#endif
free( p_paragraph->p_levels );
#endif
@@ -436,10 +448,22 @@ static int AnalyzeParagraph( paragraph_t *p_paragraph )
fribidi_get_bidi_types( p_paragraph->p_code_points,
p_paragraph->i_size,
p_paragraph->p_types );
+#if FRIBIDI_MAJOR_VERSION >= 1
+ fribidi_get_bracket_types( p_paragraph->p_code_points,
+ p_paragraph->i_size,
+ p_paragraph->p_types,
+ p_paragraph->p_btypes );
+ fribidi_get_par_embedding_levels_ex( p_paragraph->p_types,
+ p_paragraph->p_btypes,
+ p_paragraph->i_size,
+ &p_paragraph->paragraph_type,
+ p_paragraph->p_levels );
+#else
fribidi_get_par_embedding_levels( p_paragraph->p_types,
p_paragraph->i_size,
&p_paragraph->paragraph_type,
p_paragraph->p_levels );
+#endif
#ifdef HAVE_HARFBUZZ
hb_unicode_funcs_t *p_funcs = hb_unicode_funcs_get_default();

@ -1 +1 @@
cf01d4755c719fe1c8605ceb40d8f1d2 vlc-3.0.3.tar.xz
f5e49a0fb9594ab8debf934a710e92f1 vlc-3.0.4.tar.xz

@ -41,18 +41,11 @@
Summary: The cross-platform open-source multimedia framework, player and server
Name: vlc
Version: 3.0.3
Release: 7%{?dist}
Version: 3.0.4
Release: 1%{?dist}
License: GPLv2+
URL: https://www.videolan.org
Source0: %{vlc_url}/%{?!vlc_rc:%{version}/}vlc-%{version}%{?vlc_tag}.tar.xz
# https://git.videolan.org/?p=vlc.git;a=commit;h=26e2d3906658c30f2f88f4b1bc9630ec43bf5525
Patch0: modules_text_renderer_freetype_text_layout.c.patch
# https://git.videolan.org/?p=vlc.git;a=commit;h=39b0590165501cdeb85595a19bf076d06bcc594c
Patch1: buildfix_qt511.patch
# https://mailman.videolan.org/pipermail/vlc-devel/2018-July/120638.html
# https://bugzilla.rpmfusion.org/show_bug.cgi?id=4596
Patch2: fix_wayland_freeze.patch
BuildRequires: desktop-file-utils
BuildRequires: libappstream-glib
BuildRequires: fontpackages-devel
@ -325,7 +318,7 @@ rm aclocal.m4 m4/lib*.m4 m4/lt*.m4 || :
--enable-theora \
--enable-libass \
--enable-shout \
%{!?_with_wayland: --disable-wayland} \
%{?_with_wayland: --enable-wayland} \
%{!?_without_xcb:--enable-xcb --enable-xvideo} \
%{?_without_xcb:--disable-xcb --disable-xvideo} \
--enable-svg \
@ -566,6 +559,9 @@ fi || :
%changelog
* Fri Aug 31 2018 Leigh Scott <leigh123linux@googlemail.com> - 3.0.4-1
- Update to 3.0.4
* Sat Aug 04 2018 Leigh Scott <leigh123linux@googlemail.com> - 3.0.3-7
- Add patch from vlc mailing list to fix wayland freeze (rfbz#4596)

Loading…
Cancel
Save