forked from Imagelibrary/rtems
rtems: Use _Objects_Free_nothing() for msg queues
Use _Objects_Free_nothing() for rtems_message_queue_construct() to avoid unreachable code in _CORE_message_queue_Close() in case only user-provided message buffers are used. Update #4007.
This commit is contained in:
@@ -41,7 +41,12 @@ static void *_Message_queue_Get_buffers(
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
the_message_queue->free_message_buffers = config->storage_free;
|
if ( config->storage_free != NULL ) {
|
||||||
|
the_message_queue->free_message_buffers = config->storage_free;
|
||||||
|
} else {
|
||||||
|
the_message_queue->free_message_buffers = _Objects_Free_nothing;
|
||||||
|
}
|
||||||
|
|
||||||
return config->storage_area;
|
return config->storage_area;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -51,11 +51,9 @@ void _CORE_message_queue_Close(
|
|||||||
queue_context
|
queue_context
|
||||||
);
|
);
|
||||||
|
|
||||||
if ( the_message_queue->free_message_buffers != NULL ) {
|
( *the_message_queue->free_message_buffers )(
|
||||||
( *the_message_queue->free_message_buffers )(
|
the_message_queue->message_buffers
|
||||||
the_message_queue->message_buffers
|
);
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
_Thread_queue_Destroy( &the_message_queue->Wait_queue );
|
_Thread_queue_Destroy( &the_message_queue->Wait_queue );
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user