From 0b69eeaf5db2f675c398a982329b6a2bbffc799e Mon Sep 17 00:00:00 2001
From: Dean Camera <dean@fourwalledcubicle.com>
Date: Tue, 22 Dec 2015 22:31:54 +1100
Subject: Fix void pointer arithmetic in the Serial peripheral drivers.

---
 LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.c   | 4 +++-
 LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c | 4 +++-
 2 files changed, 6 insertions(+), 2 deletions(-)

(limited to 'LUFA')

diff --git a/LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.c b/LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.c
index 3df39814e..6680a6ba6 100644
--- a/LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.c
+++ b/LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.c
@@ -88,8 +88,10 @@ void Serial_SendString(const char* StringPtr)
 void Serial_SendData(const void* Buffer,
                      uint16_t Length)
 {
+	uint8_t* CurrByte = (uint8_t*)Buffer;
+
 	while (Length--)
-	  Serial_SendByte(*((uint8_t*)Buffer++));
+	  Serial_SendByte(*(CurrByte++));
 }
 
 void Serial_CreateStream(FILE* Stream)
diff --git a/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c b/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c
index f86bd9789..b7a39d3c2 100644
--- a/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c
+++ b/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c
@@ -91,8 +91,10 @@ void Serial_SendData(USART_t* const USART,
                      const void* Buffer,
                      uint16_t Length)
 {
+	uint8_t* CurrByte = (uint8_t*)Buffer;
+
 	while (Length--)
-	  Serial_SendByte(USART, *((uint8_t*)Buffer++));
+	  Serial_SendByte(USART, *(CurrByte++));
 }
 
 void Serial_CreateStream(USART_t* USART, FILE* Stream)
-- 
cgit v1.2.3