From a01b34f488587670ec17a07e6c35f90a0437b50a Mon Sep 17 00:00:00 2001
From: Igor Goncharovskiy <igor.goncharovsky@gmail.com>
Date: Sat, 8 Oct 2011 15:05:41 +0000
Subject: [PATCH] Merged revisions 339831 via svnmerge from
 https://origsvn.digium.com/svn/asterisk/branches/10
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

................
  r339831 | igorg | 2011-10-08 22:01:35 +0700 (Сбт, 08 Окт 2011) | 14 lines

  Merged revisions 339830 via svnmerge from
  https://origsvn.digium.com/svn/asterisk/branches/1.8

  ........
    r339830 | igorg | 2011-10-08 21:56:35 +0700 (Сбт, 08 Окт 2011) | 8 lines


    Fix char array cast as short array in send_client() function (for ARM
    platform)

    (closes issue ASTERISK-17314)
    Reported by: jjoshua
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@339832 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 channels/chan_unistim.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/channels/chan_unistim.c b/channels/chan_unistim.c
index 4e3f8081f5..1753365e9c 100644
--- a/channels/chan_unistim.c
+++ b/channels/chan_unistim.c
@@ -802,7 +802,7 @@ static void send_client(int size, const unsigned char *data, struct unistimsessi
 {
 	unsigned int tick;
 	int buf_pos;
-	unsigned short *sdata = (unsigned short *) data;
+	unsigned short seq = ntohs(++pte->seq_server);
 
 	ast_mutex_lock(&pte->lock);
 	buf_pos = pte->last_buf_available;
@@ -812,7 +812,7 @@ static void send_client(int size, const unsigned char *data, struct unistimsessi
 		ast_mutex_unlock(&pte->lock);
 		return;
 	}
-	sdata[1] = ntohs(++(pte->seq_server));
+	memcpy((void *)data + sizeof(unsigned short), (void *)&seq, sizeof(unsigned short));
 	pte->wsabufsend[buf_pos].len = size;
 	memcpy(pte->wsabufsend[buf_pos].buf, data, size);
 
-- 
GitLab