|
|
00db10 |
From 8b42b08a1bce2899c0f66ce66ef5fc75745c8f38 Mon Sep 17 00:00:00 2001
|
|
|
00db10 |
From: Stefan Liebler <stli@linux.vnet.ibm.com>
|
|
|
00db10 |
Date: Mon, 7 Nov 2016 16:19:30 +0100
|
|
|
00db10 |
Subject: [PATCH 10/17] S390: Fix build error with gcc6 in utf8_utf16-z9.c.
|
|
|
00db10 |
|
|
|
00db10 |
upstream commit 808d70228891ab4d4795ab3dd1e015bf63ba18d6
|
|
|
00db10 |
|
|
|
00db10 |
This patch fixes the build error with gcc6:
|
|
|
00db10 |
array subscript is above array bounds [-Werror=array-bounds]
|
|
|
00db10 |
|
|
|
00db10 |
While including loop.c to construct the SINGLE(LOOPFCT) method
|
|
|
00db10 |
for converting from UTF-16 to UTF-8, the bytebuf array with length
|
|
|
00db10 |
MAX_NEEDED_INPUT is used as inptr. MAX_NEEDED_INPUT defaults to
|
|
|
00db10 |
MIN_NEEDED_INPUT if not defined before including loop.c.
|
|
|
00db10 |
Thus bytebuf has a length of 2.
|
|
|
00db10 |
This patch defines MAX_NEEDED_INPUT to MAX_NEEDED_TO, which is 4.
|
|
|
00db10 |
|
|
|
00db10 |
ChangeLog:
|
|
|
00db10 |
|
|
|
00db10 |
* sysdeps/s390/s390-64/utf8-utf16-z9.c
|
|
|
00db10 |
(MAX_NEEDED_INPUT): New define.
|
|
|
00db10 |
(MAX_NEEDED_OUTPUT): New define.
|
|
|
00db10 |
---
|
|
|
00db10 |
sysdeps/s390/s390-64/utf8-utf16-z9.c | 2 ++
|
|
|
00db10 |
1 file changed, 2 insertions(+)
|
|
|
00db10 |
|
|
|
00db10 |
diff --git a/sysdeps/s390/s390-64/utf8-utf16-z9.c b/sysdeps/s390/s390-64/utf8-utf16-z9.c
|
|
|
00db10 |
index 6dad1c2..590a149 100644
|
|
|
00db10 |
--- a/sysdeps/s390/s390-64/utf8-utf16-z9.c
|
|
|
00db10 |
+++ b/sysdeps/s390/s390-64/utf8-utf16-z9.c
|
|
|
00db10 |
@@ -183,6 +183,7 @@ gconv_end (struct __gconv_step *data)
|
|
|
00db10 |
#define MIN_NEEDED_INPUT MIN_NEEDED_FROM
|
|
|
00db10 |
#define MAX_NEEDED_INPUT MAX_NEEDED_FROM
|
|
|
00db10 |
#define MIN_NEEDED_OUTPUT MIN_NEEDED_TO
|
|
|
00db10 |
+#define MAX_NEEDED_OUTPUT MAX_NEEDED_TO
|
|
|
00db10 |
#define LOOPFCT FROM_LOOP
|
|
|
00db10 |
/* The software implementation is based on the code in gconv_simple.c. */
|
|
|
00db10 |
#define BODY \
|
|
|
00db10 |
@@ -340,6 +341,7 @@ gconv_end (struct __gconv_step *data)
|
|
|
00db10 |
/* Conversion from UTF-16 to UTF-8. */
|
|
|
00db10 |
|
|
|
00db10 |
#define MIN_NEEDED_INPUT MIN_NEEDED_TO
|
|
|
00db10 |
+#define MAX_NEEDED_INPUT MAX_NEEDED_TO
|
|
|
00db10 |
#define MIN_NEEDED_OUTPUT MIN_NEEDED_FROM
|
|
|
00db10 |
#define MAX_NEEDED_OUTPUT MAX_NEEDED_FROM
|
|
|
00db10 |
#define LOOPFCT TO_LOOP
|
|
|
00db10 |
--
|
|
|
00db10 |
1.8.3.1
|
|
|
00db10 |
|