Hi, this is embarrassing, after coding so many objects that can easily set a signal input via an argument, like an oscillator whose signal input sets frequency and you can also set it via an argument (just like [osc~]), I can't see what's wrong with this code I'm workin on right now.

I am adapting else/gendyn~ to take center frequency so it works more like an oscillator and I am setting it via an argument or loading a default value, and I can see it is printed fine and loaded correctly at "new".

It goes into a x->x_cf variable that is also loaded at setup as via CLASS_MAINSIGNALIN(gendyn_class, t_gendyn, x_cf);

but in the perform routine this becomes "0" for some weird reason I cannot understand, so I have to give it a float or a signal into the inlet so it actually works.

I can't see what's wrong, for me it's exactly the same as other objects from my library, like [saw~], for instance.

Code live in https://github.com/porres/pd-else/blob/master/Code_source/Compiled/audio/gendyn~.c

I wonder if any wizard out there can spot the mistake I just can't seem to grab for the life of me

thanks