aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHanspeter Portner <dev@open-music-kontrollers.ch>2018-12-16 10:58:45 +0100
committerHanspeter Portner <dev@open-music-kontrollers.ch>2018-12-16 10:58:45 +0100
commit2ff05496fe29522d6a2fee8d2ba79d51a397cfd9 (patch)
treecc407c182a3961be9d7dca558fa58d0426dc02df
parent86a55df97ac4323e734fd36231ea0d7c64676e64 (diff)
downloadprops.lv2-2ff05496fe29522d6a2fee8d2ba79d51a397cfd9.tar.xz
extend last commit.
-rw-r--r--VERSION2
-rw-r--r--props.h33
2 files changed, 20 insertions, 15 deletions
diff --git a/VERSION b/VERSION
index 5c5330a..3234805 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.1.99
+0.1.101
diff --git a/props.h b/props.h
index 8d81ad9..9aad570 100644
--- a/props.h
+++ b/props.h
@@ -379,7 +379,7 @@ _props_impl_restore(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
_props_impl_unlock(impl, PROP_STATE_NONE);
- if(*ref)
+ if(*ref && !impl->def->hidden)
*ref = _props_patch_set(props, forge, frames, impl, 0);
const props_def_t *def = impl->def;
@@ -605,10 +605,7 @@ props_advance(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
{
props_impl_t *impl = &props->impls[i];
- if(impl->def->hidden)
- continue; // skip hidden properties
-
- if(*ref)
+ if(*ref && !impl->def->hidden)
*ref = _props_patch_set(props, forge, frames, impl, sequence_num);
}
@@ -620,18 +617,21 @@ props_advance(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
if(impl)
{
- *ref = _props_patch_set(props, forge, frames, impl, sequence_num);
+ if(*ref && !impl->def->hidden)
+ *ref = _props_patch_set(props, forge, frames, impl, sequence_num);
return 1;
}
else if(sequence_num)
{
- *ref = _props_patch_error(props, forge, frames, sequence_num);
+ if(*ref)
+ *ref = _props_patch_error(props, forge, frames, sequence_num);
}
}
else if(sequence_num)
{
- *ref = _props_patch_error(props, forge, frames, sequence_num);
+ if(*ref)
+ *ref = _props_patch_error(props, forge, frames, sequence_num);
}
}
else if(obj->body.otype == props->urid.patch_set)
@@ -666,7 +666,8 @@ props_advance(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
{
if(sequence_num)
{
- *ref = _props_patch_error(props, forge, frames, sequence_num);
+ if(ref)
+ *ref = _props_patch_error(props, forge, frames, sequence_num);
}
return 0;
@@ -684,14 +685,16 @@ props_advance(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
if(sequence_num)
{
- *ref = _props_patch_ack(props, forge, frames, sequence_num);
+ if(*ref)
+ *ref = _props_patch_ack(props, forge, frames, sequence_num);
}
return 1;
}
else if(sequence_num)
{
- *ref = _props_patch_error(props, forge, frames, sequence_num);
+ if(*ref)
+ *ref = _props_patch_error(props, forge, frames, sequence_num);
}
}
else if(obj->body.otype == props->urid.patch_put)
@@ -724,7 +727,8 @@ props_advance(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
{
if(sequence_num)
{
- *ref = _props_patch_error(props, forge, frames, sequence_num);
+ if(*ref)
+ *ref = _props_patch_error(props, forge, frames, sequence_num);
}
return 0;
@@ -749,7 +753,8 @@ props_advance(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
if(sequence_num)
{
- *ref = _props_patch_ack(props, forge, frames, sequence_num);
+ if(*ref)
+ *ref = _props_patch_ack(props, forge, frames, sequence_num);
}
return 1;
@@ -768,7 +773,7 @@ props_set(props_t *props, LV2_Atom_Forge *forge, uint32_t frames,
{
_props_impl_stash(props, impl);
- if(*ref) //TODO use patch:sequenceNumber
+ if(*ref && !impl->def->hidden) //TODO use patch:sequenceNumber
*ref = _props_patch_set(props, forge, frames, impl, 0);
}
}