summaryrefslogtreecommitdiffstats
path: root/src/client
diff options
context:
space:
mode:
Diffstat (limited to 'src/client')
-rw-r--r--src/client/OSCClientReceiver.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/client/OSCClientReceiver.cpp b/src/client/OSCClientReceiver.cpp
index 402a6974..f854b3fb 100644
--- a/src/client/OSCClientReceiver.cpp
+++ b/src/client/OSCClientReceiver.cpp
@@ -183,7 +183,7 @@ OSCClientReceiver::_put_cb(const char* path, const char* types, lo_arg** argv, i
int
OSCClientReceiver::_delta_begin_cb(const char* path, const char* types, lo_arg** argv, int argc, lo_message msg)
{
- const char* obj_path = &argv[1]->s;
+ const char* obj_path = &argv[0]->s;
assert(_delta_remove.empty());
assert(_delta_add.empty());
_delta_uri = obj_path;
@@ -193,16 +193,16 @@ OSCClientReceiver::_delta_begin_cb(const char* path, const char* types, lo_arg**
int
OSCClientReceiver::_delta_remove_cb(const char* path, const char* types, lo_arg** argv, int argc, lo_message msg)
{
- _delta_remove.insert(make_pair(&argv[1]->s,
- AtomLiblo::lo_arg_to_atom(types[2], argv[2])));
+ _delta_remove.insert(make_pair(&argv[0]->s,
+ AtomLiblo::lo_arg_to_atom(types[1], argv[1])));
return 0;
}
int
OSCClientReceiver::_delta_add_cb(const char* path, const char* types, lo_arg** argv, int argc, lo_message msg)
{
- _delta_add.insert(make_pair(&argv[1]->s,
- AtomLiblo::lo_arg_to_atom(types[2], argv[2])));
+ _delta_add.insert(make_pair(&argv[0]->s,
+ AtomLiblo::lo_arg_to_atom(types[1], argv[1])));
return 0;
}
@@ -210,6 +210,9 @@ int
OSCClientReceiver::_delta_end_cb(const char* path, const char* types, lo_arg** argv, int argc, lo_message msg)
{
_target->delta(_delta_uri, _delta_remove, _delta_add);
+ _delta_uri = Raul::URI();
+ _delta_remove.clear();
+ _delta_add.clear();
return 0;
}