greybus: use null pointer for empty payload

Currently message->payload always points to the address immediately
following the header in a message.  If the payload length is 0, this
is not a valid pointer.

Change the code to assign a null pointer to the payload in this
case.  I have verified that no code dereferences the payload pointer
unless the payload is known to have non-zero size.

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
This commit is contained in:
Alex Elder 2014-12-03 12:27:45 -06:00 committed by Greg Kroah-Hartman
parent 7cfa699556
commit 746e0ef95a
1 changed files with 1 additions and 1 deletions

View File

@ -284,7 +284,7 @@ static void gb_operation_message_init(struct greybus_host_device *hd,
header = (struct gb_operation_msg_hdr *)(buffer + hd->buffer_headroom);
message->header = header;
message->payload = header + 1;
message->payload = payload_size ? header + 1 : NULL;
message->payload_size = payload_size;
/*