aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHanspeter Portner <dev@open-music-kontrollers.ch>2017-05-20 12:44:07 +0200
committerHanspeter Portner <dev@open-music-kontrollers.ch>2017-05-20 12:44:07 +0200
commitc26a4ee4a0cd0b3e35ffa2e4c1022dfa7abb419a (patch)
tree94900a6c8a5d9b88094bb9b12fe2af71a64e3c9d
parentc4564a33db1ac1e68388706461636cdcc1e8d7d7 (diff)
downloadsynthpod-c26a4ee4a0cd0b3e35ffa2e4c1022dfa7abb419a.tar.xz
add stoat.whitelist.
-rw-r--r--VERSION2
-rw-r--r--app/synthpod_app.c2
-rw-r--r--app/synthpod_app_port.c2
-rw-r--r--app/synthpod_app_private.h38
-rw-r--r--app/synthpod_app_ui.c2
-rw-r--r--stoat.whitelist28
6 files changed, 69 insertions, 5 deletions
diff --git a/VERSION b/VERSION
index ca97140c..cf6dd8a7 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.1.4967
+0.1.4969
diff --git a/app/synthpod_app.c b/app/synthpod_app.c
index b179ff8c..2819641b 100644
--- a/app/synthpod_app.c
+++ b/app/synthpod_app.c
@@ -361,7 +361,7 @@ _dsp_slave_spin(dsp_master_t *dsp_master, bool is_master)
}
}
-__realtime static void *
+__non_realtime static void *
_dsp_slave_thread(void *data)
{
dsp_slave_t *dsp_slave = data;
diff --git a/app/synthpod_app_port.c b/app/synthpod_app_port.c
index e3b50166..3e35c956 100644
--- a/app/synthpod_app_port.c
+++ b/app/synthpod_app_port.c
@@ -526,7 +526,7 @@ _port_seq_multiplex(sp_app_t *app, port_t *port, uint32_t nsamples)
LV2_Atom_Event *ev = lv2_atom_sequence_append_event(dst, capacity, itr[nxt]);
if(!ev)
{
- printf("_port_seq_multiplex: failed to append\n");
+ _sp_printf_rt(app, "_port_seq_multiplex: failed to append\n");
}
// advance iterator
diff --git a/app/synthpod_app_private.h b/app/synthpod_app_private.h
index 46c8c44f..36bb20c9 100644
--- a/app/synthpod_app_private.h
+++ b/app/synthpod_app_private.h
@@ -480,6 +480,42 @@ extern const port_driver_t seq_port_driver;
#define PORT_SIZE(PORT) ((PORT)->size)
/*
+ * Debug
+ */
+static inline int
+_sp_vprintf(sp_app_t *app, const char *fmt, va_list args)
+{
+ return vfprintf(stderr, fmt, args);
+}
+
+static inline int
+_sp_printf(sp_app_t *app, const char *fmt, ...)
+{
+ va_list args;
+ va_start(args, fmt);
+ const int ret = _sp_vprintf(app, fmt, args);
+ va_end(args);
+ return ret;
+}
+
+static inline int
+_sp_vprintf_rt(sp_app_t *app, const char *fmt, va_list args)
+{
+ //return vfprintf(stderr, fmt, args); FIXME
+ return 0;
+}
+
+static inline int
+_sp_printf_rt(sp_app_t *app, const char *fmt, ...)
+{
+ va_list args;
+ va_start(args, fmt);
+ const int ret = _sp_vprintf_rt(app, fmt, args);
+ va_end(args);
+ return ret;
+}
+
+/*
* UI
*/
static inline void *
@@ -521,7 +557,7 @@ _sp_app_to_ui_advance_atom(sp_app_t *app, const LV2_Atom *atom)
static inline void
_sp_app_to_ui_overflow(sp_app_t *app)
{
- fprintf(stderr, "app->ui buffer overflow\n");
+ _sp_printf_rt(app, "app->ui buffer overflow\n");
}
static inline LV2_Atom *
diff --git a/app/synthpod_app_ui.c b/app/synthpod_app_ui.c
index d596ed9e..b650ba36 100644
--- a/app/synthpod_app_ui.c
+++ b/app/synthpod_app_ui.c
@@ -1764,7 +1764,7 @@ _notification_list_add(sp_app_t *app, const LV2_Atom_Object *obj)
if(ev)
ev->time.frames = 0;
else
- printf("_notification_list_add: failed to append\n");
+ _sp_printf_rt(app, "_notification_list_add: failed to append\n");
}
else if( (src_proto == app->regs.port.atom_transfer.urid)
&& (src_port->type == PORT_TYPE_ATOM) )
diff --git a/stoat.whitelist b/stoat.whitelist
new file mode 100644
index 00000000..876d2745
--- /dev/null
+++ b/stoat.whitelist
@@ -0,0 +1,28 @@
+Alsa_pcmi::pcm_stop
+Alsa_pcmi::play_done
+Alsa_pcmi::pcm_stop
+Alsa_pcmi::clear_chan
+Alsa_pcmi::play_chan
+Alsa_pcmi::play_init
+Alsa_pcmi::capt_done
+Alsa_pcmi::capt_init
+Alsa_pcmi::capt_chan
+Alsa_pcmi::pcm_idle
+Alsa_pcmi::pcm_wait
+Alsa_pcmi::pcm_start
+
+clock_gettime
+sched_yield
+
+snd_seq_queue_status_malloc
+snd_seq_get_queue_status
+snd_seq_get_queue_status
+snd_seq_queue_status_get_real_time
+snd_seq_event_input_pending
+snd_seq_event_input
+snd_midi_event_decode
+snd_midi_event_encode
+snd_seq_free_event
+snd_seq_event_output
+snd_seq_drain_output
+snd_seq_queue_status_free