add dds_entity_release counterpart to entity_claim

Signed-off-by: Erik Boasson <eb@ilities.com>
This commit is contained in:
Erik Boasson 2019-04-16 17:07:09 +02:00 committed by eboasson
parent 6227fe00b3
commit 2dd20c4273
5 changed files with 16 additions and 10 deletions

View file

@ -84,6 +84,9 @@ dds_entity_claim (
dds_entity_t hdl,
dds_entity **eptr);
DDS_EXPORT void dds_entity_release (
dds_entity *e);
DDS_EXPORT dds_retcode_t
dds_entity_lock(
dds_entity_t hdl,

View file

@ -761,6 +761,11 @@ dds_retcode_t dds_entity_claim (dds_entity_t hdl, dds_entity **eptr)
}
}
void dds_entity_release (dds_entity *e)
{
dds_handle_release (&e->m_hdllink);
}
dds_retcode_t dds_entity_lock (dds_entity_t hdl, dds_entity_kind_t kind, dds_entity **eptr)
{
dds_retcode_t hres;
@ -989,7 +994,7 @@ dds_return_t dds_generic_unimplemented_operation_manykinds (dds_entity_t handle,
break;
}
}
dds_handle_release (&e->m_hdllink);
dds_entity_release (e);
return DDS_ERRNO (ret);
}
}

View file

@ -100,13 +100,11 @@ dds_entity_t dds_get_datareader (dds_entity_t condition)
rdh = DDS_ERRNO (DDS_RETCODE_ILLEGAL_OPERATION);
break;
}
dds_handle_release (&e->m_hdllink);
dds_entity_release (e);
return rdh;
}
}
dds_return_t dds_get_mask (dds_entity_t condition, uint32_t *mask)
{
dds_entity *entity;

View file

@ -384,7 +384,7 @@ dds_create_reader(
} else {
subscriber = participant_or_subscriber;
}
dds_handle_release (&p_or_s->m_hdllink);
dds_entity_release (p_or_s);
internal_topic = false;
t = topic;
break;
@ -512,7 +512,7 @@ void dds_reader_ddsi2direct (dds_entity_t entity, ddsi2direct_directread_cb_t cb
if (dds_entity_kind (dds_entity) != DDS_KIND_READER)
{
dds_handle_release (&dds_entity->m_hdllink);
dds_entity_release (dds_entity);
return;
}
@ -552,7 +552,7 @@ void dds_reader_ddsi2direct (dds_entity_t entity, ddsi2direct_directread_cb_t cb
ddsrt_mutex_lock (&rd->e.lock);
}
ddsrt_mutex_unlock (&rd->e.lock);
dds_handle_release (&dds_rd->m_entity.m_hdllink);
dds_entity_release (dds_entity);
}
uint32_t dds_reader_lock_samples (dds_entity_t reader)
@ -613,7 +613,7 @@ dds_entity_t dds_get_subscriber (dds_entity_t entity)
subh = DDS_ERRNO (DDS_RETCODE_ILLEGAL_OPERATION);
break;
}
dds_handle_release (&e->m_hdllink);
dds_entity_release (e);
return subh;
}
}

View file

@ -388,7 +388,7 @@ dds_create_writer(
} else {
publisher = participant_or_publisher;
}
dds_handle_release (&p_or_p->m_hdllink);
dds_entity_release (p_or_p);
}
if ((rc = dds_publisher_lock(publisher, &pub)) != DDS_RETCODE_OK) {
@ -494,7 +494,7 @@ dds_get_publisher(
assert (dds_entity_kind (e->m_parent) == DDS_KIND_PUBLISHER);
pubh = e->m_parent->m_hdllink.hdl;
}
dds_handle_release (&e->m_hdllink);
dds_entity_release (e);
return pubh;
}
}