[LAU] reporting a bug: getting a backtrace
Fons Adriaensen
fons at linuxaudio.org
Sat Jan 21 10:44:21 UTC 2012
On Sat, Jan 21, 2012 at 12:11:10AM +0000, Alan Russell wrote:
> I got the same bug trying to patch a feedback loop on mine. It doesn't
> seem to matter what modules are in the feedback line, even a gain
> object set to 0 (-infinity dB, whatever). As soon as you close the
> loop, the program exits.
In module.cpp change
float **Module::getData(int index)
{
if (!cycleReady) {
generateCycle();
cycleReady = true;
}
return data[index];
}
to
float **Module::getData(int index)
{
if (!cycleReady) {
cycleReady = true;
generateCycle();
}
return data[index];
}
and recompile. If you have recent compilation tools you may
have to add -ldl to the list of libraries in Makefile.
The order of these two statements was apparently changed,
but it *does* matter. If there is a loop, getData() for one
particular module will call itself before generateCycle()
returns. If that happens generateCycle() must not be called
again.
Ciao,
--
FA
Vor uns liegt ein weites Tal, die Sonne scheint - ein Glitzerstrahl.
More information about the Linux-audio-user
mailing list