@@ -265,10 +265,10 @@ _take_serialized_message(
265265 (void ) allocation;
266266 *taken = false ;
267267
268- if (subscription-> implementation_identifier != identifier) {
269- RMW_SET_ERROR_MSG ( " publisher handle not from this implementation " );
270- return RMW_RET_ERROR;
271- }
268+ RMW_CHECK_TYPE_IDENTIFIERS_MATCH (
269+ subscription handle,
270+ subscription-> implementation_identifier , identifier,
271+ return RMW_RET_INCORRECT_RMW_IMPLEMENTATION)
272272
273273 CustomSubscriberInfo * info = static_cast <CustomSubscriberInfo *>(subscription->data );
274274 RCUTILS_CHECK_FOR_NULL_WITH_MSG (info, " custom subscriber info is null" , return RMW_RET_ERROR);
@@ -312,11 +312,14 @@ __rmw_take_serialized_message(
312312 bool * taken,
313313 rmw_subscription_allocation_t * allocation)
314314{
315- RCUTILS_CHECK_FOR_NULL_WITH_MSG (
316- subscription, " subscription pointer is null" , return RMW_RET_ERROR);
317- RCUTILS_CHECK_FOR_NULL_WITH_MSG (
318- serialized_message, " ros_message pointer is null" , return RMW_RET_ERROR);
319- RCUTILS_CHECK_FOR_NULL_WITH_MSG (taken, " boolean flag for taken is null" , return RMW_RET_ERROR);
315+ RMW_CHECK_ARGUMENT_FOR_NULL (
316+ subscription, RMW_RET_INVALID_ARGUMENT);
317+
318+ RMW_CHECK_ARGUMENT_FOR_NULL (
319+ serialized_message, RMW_RET_INVALID_ARGUMENT);
320+
321+ RMW_CHECK_ARGUMENT_FOR_NULL (
322+ taken, RMW_RET_INVALID_ARGUMENT);
320323
321324 return _take_serialized_message (
322325 identifier, subscription, serialized_message, taken, nullptr , allocation);
@@ -331,13 +334,17 @@ __rmw_take_serialized_message_with_info(
331334 rmw_message_info_t * message_info,
332335 rmw_subscription_allocation_t * allocation)
333336{
334- RCUTILS_CHECK_FOR_NULL_WITH_MSG (
335- subscription, " subscription pointer is null" , return RMW_RET_ERROR);
336- RCUTILS_CHECK_FOR_NULL_WITH_MSG (
337- serialized_message, " ros_message pointer is null" , return RMW_RET_ERROR);
338- RCUTILS_CHECK_FOR_NULL_WITH_MSG (taken, " boolean flag for taken is null" , return RMW_RET_ERROR);
339- RCUTILS_CHECK_FOR_NULL_WITH_MSG (
340- message_info, " message info pointer is null" , return RMW_RET_ERROR);
337+ RMW_CHECK_ARGUMENT_FOR_NULL (
338+ subscription, RMW_RET_INVALID_ARGUMENT);
339+
340+ RMW_CHECK_ARGUMENT_FOR_NULL (
341+ serialized_message, RMW_RET_INVALID_ARGUMENT);
342+
343+ RMW_CHECK_ARGUMENT_FOR_NULL (
344+ taken, RMW_RET_INVALID_ARGUMENT);
345+
346+ RMW_CHECK_ARGUMENT_FOR_NULL (
347+ message_info, RMW_RET_INVALID_ARGUMENT);
341348
342349 return _take_serialized_message (
343350 identifier, subscription, serialized_message, taken, message_info, allocation);
0 commit comments