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>
diff --git a/drivers/staging/greybus/operation.c b/drivers/staging/greybus/operation.c
index 6a1d3e6..6197167 100644
--- a/drivers/staging/greybus/operation.c
+++ b/drivers/staging/greybus/operation.c
@@ -284,7 +284,7 @@
 	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;
 
 	/*