[arch-commits] Commit in vlc/repos (5 files)
Maxime Gauduin
alucryd at archlinux.org
Fri Dec 8 13:55:35 UTC 2017
Date: Friday, December 8, 2017 @ 13:55:34
Author: alucryd
Revision: 311929
archrelease: copy trunk to staging-x86_64
Added:
vlc/repos/staging-x86_64/
vlc/repos/staging-x86_64/PKGBUILD
(from rev 311928, vlc/trunk/PKGBUILD)
vlc/repos/staging-x86_64/lua53_compat.patch
(from rev 311928, vlc/trunk/lua53_compat.patch)
vlc/repos/staging-x86_64/update-vlc-plugin-cache.hook
(from rev 311928, vlc/trunk/update-vlc-plugin-cache.hook)
vlc/repos/staging-x86_64/vlc-2.2.6-fix-memleak.patch
(from rev 311928, vlc/trunk/vlc-2.2.6-fix-memleak.patch)
------------------------------+
PKGBUILD | 115 +++++++++++++++++++++++++++++++++++++++++
lua53_compat.patch | 30 ++++++++++
update-vlc-plugin-cache.hook | 17 ++++++
vlc-2.2.6-fix-memleak.patch | 48 +++++++++++++++++
4 files changed, 210 insertions(+)
Copied: vlc/repos/staging-x86_64/PKGBUILD (from rev 311928, vlc/trunk/PKGBUILD)
===================================================================
--- staging-x86_64/PKGBUILD (rev 0)
+++ staging-x86_64/PKGBUILD 2017-12-08 13:55:34 UTC (rev 311929)
@@ -0,0 +1,115 @@
+# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
+# Contributor: Giovanni Scafora <giovanni at archlinux.org>
+# Contributor: Sarah Hay <sarahhay at mb.sympatico.ca>
+# Contributor: Martin Sandsmark <martin.sandsmark at kde.org>
+
+pkgname=vlc
+pkgver=2.2.8
+pkgrel=1
+pkgdesc='Multi-platform MPEG, VCD/DVD, and DivX player'
+url='https://www.videolan.org/vlc/'
+arch=('x86_64')
+license=('LGPL2.1' 'GPL2')
+depends=('a52dec' 'libdvbpsi' 'libxpm' 'libdca' 'libproxy'
+ 'sdl_image' 'libdvdnav' 'libtiger' 'lua' 'libmatroska'
+ 'zvbi' 'taglib' 'libmpcdec' 'ffmpeg2.8' 'faad2' 'libupnp'
+ 'libshout' 'libmad' 'libmpeg2' 'xcb-util-keysyms' 'libtar'
+ 'libxinerama')
+makedepends=('live-media' 'libnotify' 'libbluray' 'flac' 'kdelibs'
+ 'libdc1394' 'libavc1394' 'lirc' 'libcaca' 'gtk2'
+ 'librsvg' 'portaudio' 'libgme' 'xosd' 'projectm'
+ 'twolame' 'aalib' 'libmtp' 'libdvdcss' 'smbclient'
+ 'libgoom2' 'vcdimager' 'opus' 'libssh2' 'mesa' 'qt4')
+optdepends=('avahi: for service discovery using bonjour protocol'
+ 'libnotify: for notification plugin'
+ 'gtk2: for notify plugin'
+ 'ncurses: for ncurses interface support'
+ 'libdvdcss: for decoding encrypted DVDs'
+ 'lirc: for lirc plugin'
+ 'libavc1394: for devices using the 1394ta AV/C'
+ 'libdc1394: for IEEE 1394 plugin'
+ 'kdelibs: KDE Solid hardware integration'
+ 'libva-vdpau-driver: vdpau back-end for nvidia'
+ 'libva-intel-driver: back-end for intel cards'
+ 'libbluray: for Blu-Ray support'
+ 'flac: for Free Lossless Audio Codec plugin'
+ 'portaudio: for portaudio support'
+ 'twolame: for TwoLAME mpeg2 encoder plugin'
+ 'projectm: for ProjectM visualisation plugin'
+ 'libcaca: for colored ASCII art video output'
+ 'libgme: for libgme plugin'
+ 'librsvg: for SVG plugin'
+ 'libgoom2: for libgoom plugin'
+ 'vcdimager: navigate VCD with libvcdinfo'
+ 'aalib: for ASCII art plugin'
+ 'libmtp: for MTP devices support'
+ 'smbclient: for SMB access plugin'
+ 'libcdio: for audio CD playback support'
+ 'ttf-freefont: for subtitle font '
+ 'ttf-dejavu: for subtitle font'
+ 'opus: for opus support'
+ 'libssh2: for sftp support'
+ 'lua-socket: for http interface'
+ 'qt4: for the GUI')
+conflicts=('vlc-plugin')
+replaces=('vlc-plugin')
+options=('!emptydirs')
+source=(https://download.videolan.org/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.xz{,.asc}
+ vlc-2.2.6-fix-memleak.patch
+ update-vlc-plugin-cache.hook
+ lua53_compat.patch)
+sha512sums=('adde16f4b4bd2d94f104bb3b99995df6bf4603bc67333c7615cb8d1d31ca63440b6b0aa93de9ccf0dba717cf905577c7d0bca7baba63caf401790b82eac3e04a'
+ 'SKIP'
+ '0f16c0e1a21808a3e48a276ed41c3845650bb2d5df5386c8c50832aa769959a8d440086b0af3ae17add754b449a8501334b7f167c68210c255f55b53c40a799f'
+ 'd9e69a01eb8868647beac0f419328e6ca3fe14a2e2a9e6ce4b61ed590b41b0136fb3ac9e284b174a910c2fe8822d1b37445a48d0b7caea647060ebfabe899e7b'
+ '33cda373aa1fb3ee19a78748e2687f2b93c8662c9fda62ecd122a2e649df8edaceb54dda3991bc38c80737945a143a9e65baa2743a483bb737bb94cd590dc25f')
+validpgpkeys=('65F7C6B4206BD057A7EB73787180713BE58D1ADC') # VideoLAN Release Signing Key
+
+prepare() {
+ cd ${pkgname}-${pkgver}
+ sed -i -e 's:truetype/freefont:TTF:g' modules/text_renderer/freetype.c
+ sed -i -e 's:truetype/ttf-dejavu:TTF:g' modules/visualization/projectm.cpp
+ patch -p1 < "${srcdir}/lua53_compat.patch"
+ patch -p1 < "${srcdir}/vlc-2.2.6-fix-memleak.patch"
+}
+
+build() {
+ cd ${pkgname}-${pkgver}
+
+ export PKG_CONFIG_PATH="/usr/lib/ffmpeg2.8/pkgconfig"
+ export CFLAGS+=" -I/usr/include/samba-4.0"
+ export CPPFLAGS+=" -I/usr/include/samba-4.0"
+ export CXXFLAGS+=" -std=gnu++98"
+ export LUAC=/usr/bin/luac
+ export LUA_LIBS="$(pkg-config --libs lua)"
+ export RCC=/usr/bin/rcc-qt4
+
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --disable-rpath \
+ --enable-faad \
+ --enable-nls \
+ --enable-lirc \
+ --enable-ncurses \
+ --enable-realrtsp \
+ --enable-aa \
+ --enable-vcdx \
+ --enable-upnp \
+ --enable-opus \
+ --enable-sftp
+ make
+}
+
+package() {
+ cd "${pkgname}-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ for res in 16 32 48 128; do
+ install -Dm 644 "${srcdir}/vlc-${pkgver}/share/icons/${res}x${res}/vlc.png" \
+ "${pkgdir}/usr/share/icons/hicolor/${res}x${res}/apps/vlc.png"
+ done
+ install -Dm 644 "${srcdir}/update-vlc-plugin-cache.hook" -t "${pkgdir}/usr/share/libalpm/hooks"
+}
+
+# vim: ts=2 sw=2 et:
Copied: vlc/repos/staging-x86_64/lua53_compat.patch (from rev 311928, vlc/trunk/lua53_compat.patch)
===================================================================
--- staging-x86_64/lua53_compat.patch (rev 0)
+++ staging-x86_64/lua53_compat.patch 2017-12-08 13:55:34 UTC (rev 311929)
@@ -0,0 +1,30 @@
+commit 41caaa08cde60c4fec4bf2e5f9610e2a1b9e6a23
+Author: Vinson Lee <vlee at freedesktop.org>
+Date: Thu Feb 5 14:48:53 2015 -0800
+
+ lua: Define LUA_COMPAT_APIINTCASTS for Lua >= 5.3.0 compatibility.
+
+ In Lua 5.3.0, luaL_checkint was deprecated.
+
+ This patch fixes this build error with Lua 5.3.0.
+
+ lua/demux.c: In function ‘vlclua_demux_peek’:
+ lua/demux.c:55:5: error: implicit declaration of function ‘luaL_checkint’ [-Werror=implicit-function-declaration]
+ int n = luaL_checkint( L, 1 );
+ ^
+
+ Signed-off-by: Vinson Lee <vlee at freedesktop.org>
+ Signed-off-by: Jean-Baptiste Kempf <jb at videolan.org>
+
+diff --git a/modules/lua/vlc.h b/modules/lua/vlc.h
+index efd94f1..85c7fc1 100644
+--- a/modules/lua/vlc.h
++++ b/modules/lua/vlc.h
+@@ -38,6 +38,7 @@
+ #include <vlc_stream.h>
+ #include <vlc_demux.h>
+
++#define LUA_COMPAT_APIINTCASTS
+ #define LUA_COMPAT_MODULE
+ #include <lua.h> /* Low level lua C API */
+ #include <lauxlib.h> /* Higher level C API */
Copied: vlc/repos/staging-x86_64/update-vlc-plugin-cache.hook (from rev 311928, vlc/trunk/update-vlc-plugin-cache.hook)
===================================================================
--- staging-x86_64/update-vlc-plugin-cache.hook (rev 0)
+++ staging-x86_64/update-vlc-plugin-cache.hook 2017-12-08 13:55:34 UTC (rev 311929)
@@ -0,0 +1,17 @@
+[Trigger]
+Type = File
+Operation = Install
+Operation = Upgrade
+Operation = Remove
+Target = usr/lib/vlc/plugins/*
+
+[Trigger]
+Type = Package
+Operation = Install
+Operation = Remove
+Target = qt4
+
+[Action]
+Description = Updating the vlc plugin cache...
+When = PostTransaction
+Exec = /usr/lib/vlc/vlc-cache-gen -f /usr/lib/vlc/plugins
Copied: vlc/repos/staging-x86_64/vlc-2.2.6-fix-memleak.patch (from rev 311928, vlc/trunk/vlc-2.2.6-fix-memleak.patch)
===================================================================
--- staging-x86_64/vlc-2.2.6-fix-memleak.patch (rev 0)
+++ staging-x86_64/vlc-2.2.6-fix-memleak.patch 2017-12-08 13:55:34 UTC (rev 311929)
@@ -0,0 +1,48 @@
+From 66dc09662ae33d44c21a5159885afdcaabb0cbb0 Mon Sep 17 00:00:00 2001
+From: =?utf8?q?Filip=20Ros=C3=A9en?= <filip at atch.se>
+Date: Fri, 23 Sep 2016 13:52:31 +0200
+Subject: [PATCH] video_output/xcb: fix memory-leak in ReleaseDrawable
+
+The problem with the previous implementation is that "n" will never
+be equal to 0 at the relevant part of the code (given the
+unconditional pre-increment a few lines earlier).
+
+These changes fixes the issue by freeing the allocated memory if the
+first element of "used" is NULL (meaning that there are no more
+entities referred to by it).
+
+fixes #17112
+fixes #17293
+
+Signed-off-by: Thomas Guillem <thomas at gllm.fr>
+---
+ modules/video_output/xcb/window.c | 11 +++++++----
+ 1 file changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/modules/video_output/xcb/window.c b/modules/video_output/xcb/window.c
+index 02c9dd11e3..0c4f86f68c 100644
+--- a/modules/video_output/xcb/window.c
++++ b/modules/video_output/xcb/window.c
+@@ -538,12 +538,15 @@ static void ReleaseDrawable (vlc_object_t *obj, xcb_window_t window)
+ used[n] = used[n + 1];
+ while (used[++n]);
+
+- if (n == 0)
+- var_SetAddress (obj->p_libvlc, "xid-in-use", NULL);
++ if (!used[0])
++ var_SetAddress (obj->p_libvlc, "xid-in-use", NULL);
++ else
++ used = NULL;
++
+ vlc_mutex_unlock (&serializer);
+
+- if (n == 0)
+- free (used);
++ free( used );
++
+ /* Variables are reference-counted... */
+ var_Destroy (obj->obj.libvlc, "xid-in-use");
+ }
+--
+2.11.0
+
More information about the arch-commits
mailing list