Bug#907220: Some caps plugins are crashing

2018-08-25 Thread trebmuh

Tags: patch + pending

... couic ...


The attached patch fixes the issue on a debian stretch rebuild.
It hasn't been tried by me so far (hence this report and not a commit
to the debian salsa repository).


It should have been :

It hasn't been tried by me **on a Buster build** so far (hence this 
report

and not a commit to the debian salsa repository).

Olivier



Bug#907220: Some caps plugins are crashing

2018-08-24 Thread trebmuh

Package: caps
Version: 0.9.24-5

This has been tested on a Stretch system from the stable package version 
(0.9.24-4) as well as from a home-made backport of the current 
buster/sid package (0.9.24-5).


The following plugins aren't working :
- C* AmpVTS
- C* Compress
- C* CompressX2
- C* Saturate

When one of these plugins is inserted into Ardour, an audio click is 
happening and the track's meters is going up in the red and stays there.


The attached patch fixes the issue on a debian stretch rebuild.
It hasn't been tried by me so far (hence this report and not a commit to 
the debian salsa repository).


Notes:
1) this patch has been sent to the upstream maintainer
2) I'm copying the patch writer to this bug report, please keep him 
CC'ed for any later message on this thread


Hope that helps.
OlivierDescription: fix crash (bug LZK #487)
Origin: https://github.com/moddevices/caps-lv2/pull/14
Forwarded: don't know
Author: Olivier Humbert 
Reviewed-by: Jean-Pierre Cimalando
Last-Update: 2018-08-23

--- a/dsp/windows.h
+++ b/dsp/windows.h
@@ -157,12 +157,9 @@
 
 	for (double i = -n / 2 + .1; si < n; ++si, i += step)
 	{
-		double k = besseli ((beta * sqrt (1 - pow ((2 * i / (n - 1)), 2 / bb;
-
-		/* can you spell hack */
-		if (!finite (k) || isnan(k))
-			k = 0;
-
+		double a = 1 - pow ((2 * i / (n - 1)), 2);
+		a = (a < 0.0) ? 0.0 : a;
+		double k = besseli ((beta * sqrt (a))) / bb;
 		F (s[si], k);
 	}
 }