summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2017-10-29 12:56:23 +0100
committerAndreas Sturmlechner <asturm@gentoo.org>2017-10-29 13:59:56 +0100
commit257d344317af170a10a0b7e5b49018704bb2a592 (patch)
treeb4f1c192a90504212be14a2f6fb763d96eb8953a /media-sound/jalv/files
parentsys-kernel/aufs-sources: Bump to latest genpatches and linux release (diff)
downloadgentoo-257d344317af170a10a0b7e5b49018704bb2a592.tar.gz
gentoo-257d344317af170a10a0b7e5b49018704bb2a592.tar.bz2
gentoo-257d344317af170a10a0b7e5b49018704bb2a592.zip
media-sound/jalv: Fix segfault w/ Qt5 plugins, run in background
Gentoo-bug: 621708, 634030 Closes: https://bugs.gentoo.org/634030 Package-Manager: Portage-2.3.13, Repoman-2.3.4
Diffstat (limited to 'media-sound/jalv/files')
-rw-r--r--media-sound/jalv/files/jalv-1.6.0-stdin.patch67
-rw-r--r--media-sound/jalv/files/jalv-1.6.0-suil-qt5.patch34
2 files changed, 101 insertions, 0 deletions
diff --git a/media-sound/jalv/files/jalv-1.6.0-stdin.patch b/media-sound/jalv/files/jalv-1.6.0-stdin.patch
new file mode 100644
index 000000000000..953af7c5f3e3
--- /dev/null
+++ b/media-sound/jalv/files/jalv-1.6.0-stdin.patch
@@ -0,0 +1,67 @@
+From 3a46e861b5b8dbbacb8dd1cec9fa2c69a10b26e0 Mon Sep 17 00:00:00 2001
+From: David Robillard <d@drobilla.net>
+Date: Sat, 18 Feb 2017 18:00:03 +0100
+Subject: Add jalv -i option to ignore stdin for background use
+
+
+diff --git a/doc/jalv.1 b/doc/jalv.1
+index 6d93a72..000ed5a 100644
+--- a/doc/jalv.1
++++ b/doc/jalv.1
+@@ -17,6 +17,10 @@ Print the command line options.
+ Print control output changes to stdout.
+
+ .TP
++\fB\-i\fR
++Ignore input on stdin (for background use).
++
++.TP
+ \fB\-c SYM=VAL\fR
+ Set control value (e.g. "vol=1.4").
+
+diff --git a/src/jalv_console.c b/src/jalv_console.c
+index c0f369c..e0e114b 100644
+--- a/src/jalv_console.c
++++ b/src/jalv_console.c
+@@ -106,6 +106,8 @@ jalv_init(int* argc, char*** argv, JalvOptions* opts)
+ opts->controls, (++n_controls + 1) * sizeof(char*));
+ opts->controls[n_controls - 1] = (*argv)[a];
+ opts->controls[n_controls] = NULL;
++ } else if ((*argv)[a][1] == 'i') {
++ opts->non_interactive = true;
+ } else if ((*argv)[a][1] == 'd') {
+ opts->dump = true;
+ } else if ((*argv)[a][1] == 't') {
+@@ -191,7 +193,7 @@ jalv_open_ui(Jalv* jalv)
+
+ show_iface->hide(suil_instance_get_handle(jalv->ui_instance));
+
+- } else {
++ } else if (!jalv->opts.non_interactive) {
+ // Primitive command prompt for setting control values
+ while (!zix_sem_try_wait(jalv->done)) {
+ char line[128];
+@@ -202,6 +204,8 @@ jalv_open_ui(Jalv* jalv)
+ break;
+ }
+ }
++ } else {
++ zix_sem_wait(jalv->done);
+ }
+
+ // Caller waits on the done sem, so increment it again to exit
+diff --git a/src/jalv_internal.h b/src/jalv_internal.h
+index 3a565ec..06f116a 100644
+--- a/src/jalv_internal.h
++++ b/src/jalv_internal.h
+@@ -172,6 +172,7 @@ typedef struct {
+ int no_menu; ///< Hide menu iff true
+ int show_ui; ///< Show non-embedded UI
+ int print_controls; ///< Print control changes to stdout
++ int non_interactive; ///< Do not listen for commands on stdin
+ } JalvOptions;
+
+ typedef struct {
+--
+cgit v0.10.2
+
diff --git a/media-sound/jalv/files/jalv-1.6.0-suil-qt5.patch b/media-sound/jalv/files/jalv-1.6.0-suil-qt5.patch
new file mode 100644
index 000000000000..a57447ce075b
--- /dev/null
+++ b/media-sound/jalv/files/jalv-1.6.0-suil-qt5.patch
@@ -0,0 +1,34 @@
+From 4d22c6a53ff1dcb657ab1913f1b100e42db19bca Mon Sep 17 00:00:00 2001
+From: David Robillard <d@drobilla.net>
+Date: Sat, 18 Mar 2017 12:00:11 +0100
+Subject: Use new suil init API to fix Qt5 plugin UIs
+
+
+diff --git a/src/jalv.c b/src/jalv.c
+index 78901ca..20f24e7 100644
+--- a/src/jalv.c
++++ b/src/jalv.c
+@@ -777,6 +777,7 @@ main(int argc, char** argv)
+ jalv.bpm = 120.0f;
+ jalv.control_in = (uint32_t)-1;
+
++ suil_init(&argc, &argv, SUIL_ARG_NONE);
+ if (jalv_init(&argc, &argv, &jalv.opts)) {
+ return EXIT_FAILURE;
+ }
+diff --git a/wscript b/wscript
+index 19f51bb..e2adc63 100644
+--- a/wscript
++++ b/wscript
+@@ -59,7 +59,7 @@ def configure(conf):
+ autowaf.check_pkg(conf, 'sord-0', uselib_store='SORD',
+ atleast_version='0.12.0', mandatory=True)
+ autowaf.check_pkg(conf, 'suil-0', uselib_store='SUIL',
+- atleast_version='0.6.0', mandatory=True)
++ atleast_version='0.8.7', mandatory=True)
+ autowaf.check_pkg(conf, 'sratom-0', uselib_store='SRATOM',
+ atleast_version='0.6.0', mandatory=True)
+ if Options.options.portaudio:
+--
+cgit v0.10.2
+