From ffd3e189de822b42c1ad02d6f9ce625f3c6e467d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= Date: Wed, 5 Feb 2020 16:03:06 +0000 Subject: [PATCH] ladspa: fix unbounded integer properties Use a double instead of a plain float for intermediary property values, so we have enough bits to store INT_MAX and it doesn't get rounded and wrapped to -1 when cast back to a 32-bit integer. Fixes criticals like g_param_spec_int: assertion 'default_value >= minimum && default_value <= maximum' failed when loading LADSPA plugins from the Linux Studio Plugins Project (http://lsp-plug.in) in GStreamer. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1194 --- ext/ladspa/gstladspautils.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ext/ladspa/gstladspautils.c b/ext/ladspa/gstladspautils.c index d55db6f856..f1de0007f1 100644 --- a/ext/ladspa/gstladspautils.c +++ b/ext/ladspa/gstladspautils.c @@ -346,7 +346,7 @@ gst_ladspa_object_class_get_param_spec (GstLADSPAClass * ladspa_class, GParamSpec *ret; gchar *name; gint hintdesc, perms; - gfloat lower, upper, def; + gdouble lower, upper, def; name = gst_ladspa_object_class_get_param_name (ladspa_class, object_class,