some fixes necessary to perform size check
This commit is contained in:
@ -50,7 +50,7 @@ ReturnValue_t MessageQueue::reply(MessageQueueMessageIF* message) {
|
||||
ReturnValue_t MessageQueue::sendMessageFrom(MessageQueueId_t sendTo,
|
||||
MessageQueueMessageIF* message, MessageQueueId_t sentFrom,
|
||||
bool ignoreFault) {
|
||||
return sendMessageFromMessageQueue(sendTo, message, sentFrom,
|
||||
return sendMessageFromMessageQueue(sendTo, message, maxMessageSize, sentFrom,
|
||||
ignoreFault, callContext);
|
||||
}
|
||||
|
||||
@ -121,11 +121,11 @@ bool MessageQueue::isDefaultDestinationSet() const {
|
||||
|
||||
// static core function to send messages.
|
||||
ReturnValue_t MessageQueue::sendMessageFromMessageQueue(MessageQueueId_t sendTo,
|
||||
MessageQueueMessageIF* message, MessageQueueId_t sentFrom,
|
||||
bool ignoreFault, CallContext callContext) {
|
||||
MessageQueueMessageIF* message, size_t maxSize,
|
||||
MessageQueueId_t sentFrom, bool ignoreFault, CallContext callContext) {
|
||||
message->setSender(sentFrom);
|
||||
BaseType_t result;
|
||||
if(message->getMaximumMessageSize() > maxMessageSize) {
|
||||
if(message->getMaximumMessageSize() > maxSize) {
|
||||
sif::error << "MessageQueue::sendMessageFromMessageQueue: Message size"
|
||||
"too large for queue!" << std::endl;
|
||||
return HasReturnvaluesIF::RETURN_FAILED;
|
||||
|
@ -194,8 +194,9 @@ protected:
|
||||
* @param context Specify whether call is made from task or from an ISR.
|
||||
*/
|
||||
static ReturnValue_t sendMessageFromMessageQueue(MessageQueueId_t sendTo,
|
||||
MessageQueueMessageIF* message, MessageQueueId_t sentFrom = NO_QUEUE,
|
||||
bool ignoreFault=false, CallContext callContext = CallContext::TASK);
|
||||
MessageQueueMessageIF* message, size_t maxSize,
|
||||
MessageQueueId_t sentFrom = NO_QUEUE, bool ignoreFault=false,
|
||||
CallContext callContext = CallContext::TASK);
|
||||
|
||||
static ReturnValue_t handleSendResult(BaseType_t result, bool ignoreFault);
|
||||
|
||||
|
@ -7,9 +7,9 @@ QueueFactory* QueueFactory::factoryInstance = nullptr;
|
||||
|
||||
|
||||
ReturnValue_t MessageQueueSenderIF::sendMessage(MessageQueueId_t sendTo,
|
||||
MessageQueueMessageIF* message, MessageQueueId_t sentFrom,
|
||||
bool ignoreFault) {
|
||||
return MessageQueue::sendMessageFromMessageQueue(sendTo,message,
|
||||
MessageQueueMessageIF* message, size_t maxSize,
|
||||
MessageQueueId_t sentFrom, bool ignoreFault) {
|
||||
return MessageQueue::sendMessageFromMessageQueue(sendTo,message, maxSize,
|
||||
sentFrom,ignoreFault);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user