summaryrefslogtreecommitdiff
path: root/source/l/libvisual-plugins
diff options
context:
space:
mode:
Diffstat (limited to 'source/l/libvisual-plugins')
-rw-r--r--source/l/libvisual-plugins/60_no-const-vispluginfo-in-nastyfft.patch18
-rwxr-xr-xsource/l/libvisual-plugins/libvisual-plugins.SlackBuild7
2 files changed, 22 insertions, 3 deletions
diff --git a/source/l/libvisual-plugins/60_no-const-vispluginfo-in-nastyfft.patch b/source/l/libvisual-plugins/60_no-const-vispluginfo-in-nastyfft.patch
new file mode 100644
index 00000000..8e54e02c
--- /dev/null
+++ b/source/l/libvisual-plugins/60_no-const-vispluginfo-in-nastyfft.patch
@@ -0,0 +1,18 @@
+The static VisPluginInfo in nastyfft was declared as const, but libvisual write
+to its refcount when it visual_object_unref()s it (nasty!). This is broken at
+various levels: libvisual shouldn't be writing to this static plugin which is
+allocated by a dlopen()ed plugin, and it should also honor the "const
+VisPluginInfo" API... Anyway, nastyfft was the only occurrence and this fixes
+the crash for now; LP: #287448.
+
+--- libvisual-plugins-0.4.0.dfsg.1.orig/plugins/actor/nastyfft/actor_nastyfft.c
++++ libvisual-plugins-0.4.0.dfsg.1/plugins/actor/nastyfft/actor_nastyfft.c
+@@ -80,7 +80,7 @@
+ .vidoptions.depth = VISUAL_VIDEO_DEPTH_GL
+ }};
+
+- static const VisPluginInfo info[] = {{
++ static VisPluginInfo info[] = {{
+ .type = VISUAL_PLUGIN_TYPE_ACTOR,
+
+ .plugname = N_("nastyfft"),
diff --git a/source/l/libvisual-plugins/libvisual-plugins.SlackBuild b/source/l/libvisual-plugins/libvisual-plugins.SlackBuild
index 84f6f7f0..2352227f 100755
--- a/source/l/libvisual-plugins/libvisual-plugins.SlackBuild
+++ b/source/l/libvisual-plugins/libvisual-plugins.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2008, 2009, 2010, 2018 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2018, 2019 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=libvisual-plugins
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -78,7 +78,8 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-zcat $CWD/libvisual-plugins.gstreamer.diff.gz | patch -p1 || exit 1
+zcat $CWD/libvisual-plugins.gstreamer.diff.gz | patch -p1 --verbose || exit 1
+zcat $CWD/60_no-const-vispluginfo-in-nastyfft.patch.gz | patch -p1 --verbose || exit 1
# Configure:
CFLAGS="$SLKCFLAGS" \