#include "i18n.h"
+#include <pbd/mathfix.h>
+
+
using namespace std;
using namespace ARDOUR;
if (get_control_info (ch, ev, additional)) {
data.controller_number = additional;
data.value = val;
-
+ last_written = val;
+
sp.get_parent().session().send_midi_message (get_port(), ev, ch, data);
}
/* store effective pan position. do this even if we are muted */
- effective_x = buffers[0][nframes-1];
+ if (nframes > 0)
+ effective_x = buffers[0][nframes-1];
if (_muted) {
return;
}
f += dsq[i] * dsq[i];
}
- fr = 1.0f / sqrtf(f);
-
+#ifdef __APPLE__
+ // terrible hack to support OSX < 10.3.9 builds
+ fr = (float) (1.0 / sqrt((double)f));
+#else
+ fr = 1.0 / sqrtf(f);
+#endif
for (i = 0; i < nouts; ++i) {
parent.outputs[i].desired_pan = 1.0f - (dsq[i] * fr);
}