amsynth: update to 1.12.2

Remove patches, as they are implemented in this version
This commit is contained in:
Nathan Owens 2020-11-29 18:12:54 -06:00 committed by Piraty
parent c440171609
commit 8b70c7e843
4 changed files with 4 additions and 125 deletions

View file

@ -1,60 +0,0 @@
From aa3c555bbf27aa79cbfa811ee2c8cb5e125069b8 Mon Sep 17 00:00:00 2001
From: JP Cimalando <jp-dev@inbox.ru>
Date: Wed, 29 May 2019 20:57:35 +0200
Subject: [PATCH 1/3] Fix issue of static initialization order
The static variable _preset can be uninitialized when the library constructor
runs. When it happens, the parameters and their names are not enumerated
correctly in the DSSI descriptor.
---
src/Preset.cpp | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git src/Preset.cpp src/Preset.cpp
index 02bae49..b67dc81 100644
--- src/Preset.cpp
+++ src/Preset.cpp
@@ -223,10 +223,15 @@ void get_parameter_properties(int parameter_index, double *minimum, double *maxi
/* this implements the C API in controls.h */
-static Preset _preset;
+static const Preset &_get_preset()
+{
+ static const Preset preset;
+ return preset;
+}
const char *parameter_name_from_index (int param_index)
{
+ const Preset &_preset = _get_preset();
if (param_index < 0 || param_index >= (int)_preset.ParameterCount())
return NULL;
static std::vector<std::string> names;
@@ -239,6 +244,7 @@ const char *parameter_name_from_index (int param_index)
int parameter_index_from_name (const char *param_name)
{
+ const Preset &_preset = _get_preset();
for (unsigned i=0; i<_preset.ParameterCount(); i++) {
if (std::string(param_name) == _preset.getParameter(i).getName()) {
return i;
@@ -249,6 +255,7 @@ int parameter_index_from_name (const char *param_name)
int parameter_get_display (int parameter_index, float parameter_value, char *buffer, size_t maxlen)
{
+ const Preset &_preset = _get_preset();
Parameter parameter = _preset.getParameter(parameter_index);
parameter.setValue(parameter_value);
float real_value = parameter.getControlValue();
@@ -406,6 +413,7 @@ void Preset::setShouldIgnoreParameter(int parameter, bool ignore)
std::string Preset::getIgnoredParameterNames()
{
+ const Preset &_preset = _get_preset();
std::string names;
for (int i = 0; i < kAmsynthParameterCount; i++) {
if (shouldIgnoreParameter(i)) {
--
2.24.0

View file

@ -1,34 +0,0 @@
From 8d863e4bd86b1ae14ef1eb34b0b58a0609592353 Mon Sep 17 00:00:00 2001
From: Nick Dowell <nick@nickdowell.com>
Date: Fri, 26 Apr 2019 16:05:27 +0100
Subject: [PATCH 2/3] Fix size of ALSA audio buffer
---
src/drivers/ALSAAudioDriver.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git src/drivers/ALSAAudioDriver.cpp src/drivers/ALSAAudioDriver.cpp
index f50e348..68ccf4c 100644
--- src/drivers/ALSAAudioDriver.cpp
+++ src/drivers/ALSAAudioDriver.cpp
@@ -1,7 +1,7 @@
/*
* ALSAAudioDriver.cpp
*
- * Copyright (c) 2001-2015 Nick Dowell
+ * Copyright (c) 2001-2019 Nick Dowell
*
* This file is part of amsynth.
*
@@ -112,7 +112,7 @@ ALSAAudioDriver::open()
_handle = pcm;
_channels = config.channels;
- _buffer = (short *)malloc(kMaxWriteFrames * sizeof(short));
+ _buffer = (short *)malloc(kMaxWriteFrames * _channels * sizeof(short));
config.current_audio_driver = "ALSA";
#ifdef ENABLE_REALTIME
--
2.24.0

View file

@ -1,27 +0,0 @@
From b0b2fd09f4b58fef8f189c1f09cc8857723b123c Mon Sep 17 00:00:00 2001
From: Janne Junnila <janne.junnila@gmail.com>
Date: Sun, 7 Jul 2019 10:06:07 +0200
Subject: [PATCH 3/3] Fix a segfault when trying to free an environment
variable.
---
src/GUI/editor_pane.c | 3 +++
1 file changed, 3 insertions(+)
diff --git src/GUI/editor_pane.c src/GUI/editor_pane.c
index 090b80f..9332972 100644
--- src/GUI/editor_pane.c
+++ src/GUI/editor_pane.c
@@ -266,6 +266,9 @@ editor_pane_new (void *synthesizer, GtkAdjustment **adjustments, gboolean is_plu
gchar *skin_path = (gchar *)g_getenv ("AMSYNTH_SKIN");
if (skin_path == NULL) {
skin_path = g_build_filename (PKGDATADIR, "skins", "default", NULL);
+ } else {
+ // Copy the env var so that we don't segfault at free below
+ skin_path = g_strdup (skin_path);
}
if (!g_file_test (skin_path, G_FILE_TEST_EXISTS)) {
--
2.24.0

View file

@ -1,7 +1,7 @@
# Template file for 'amsynth' # Template file for 'amsynth'
pkgname=amsynth pkgname=amsynth
version=1.9.0 version=1.12.2
revision=3 revision=1
build_style=gnu-configure build_style=gnu-configure
configure_args="$(vopt_with man pandoc)" configure_args="$(vopt_with man pandoc)"
hostmakedepends="$(vopt_if man pandoc) intltool pkg-config" hostmakedepends="$(vopt_if man pandoc) intltool pkg-config"
@ -11,8 +11,8 @@ short_desc="Analogue Modeling SYNTHesizer"
maintainer="Olga Ustuzhanina <me@laserbat.pw>" maintainer="Olga Ustuzhanina <me@laserbat.pw>"
license="GPL-2.0-or-later" license="GPL-2.0-or-later"
homepage="https://amsynth.github.io/" homepage="https://amsynth.github.io/"
distfiles="https://github.com/amsynth/${pkgname}/releases/download/release-${version}/${pkgname}-${version}.tar.bz2" distfiles="https://github.com/amsynth/${pkgname}/releases/download/release-${version}/${pkgname}-${version}.tar.gz"
checksum=c0d1e11be528366da543363e73363a4b9fd86f72e03d2d22adb3ec355fa61a80 checksum=31e836c6e36ed1ffc6ac81d2af558ead7e2904f16c102f806ed1895abd3b1752
build_options="man" build_options="man"
desc_option_man="Use pandoc for manpages" desc_option_man="Use pandoc for manpages"