summaryrefslogtreecommitdiff
path: root/pp_pack.c
diff options
context:
space:
mode:
authorKarl Williamson <khw@cpan.org>2018-01-22 12:45:14 -0700
committerKarl Williamson <khw@cpan.org>2018-01-22 12:49:20 -0700
commit81b3f640bb2856350fe6a5efe32056accab1d775 (patch)
tree3a5c0476c9b773c3ae192f5e48fed2a2358e4ee8 /pp_pack.c
parent10417d4775a08e4e3438d6f298f69b6ada5e2fea (diff)
downloadperl-81b3f640bb2856350fe6a5efe32056accab1d775.tar.gz
Allow space for NUL is UTF-8 array decls
In grepping the source, I noticed that several arrays that are for holding UTF-8 characters did not allow space for a trailing NUL. This commit adds that.
Diffstat (limited to 'pp_pack.c')
-rw-r--r--pp_pack.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/pp_pack.c b/pp_pack.c
index 24cdee9714..8937d6d715 100644
--- a/pp_pack.c
+++ b/pp_pack.c
@@ -1288,7 +1288,7 @@ S_unpack_rec(pTHX_ tempsym_t* symptr, const char *s, const char *strbeg, const c
STRLEN retlen;
UV auv;
if (utf8) {
- U8 result[UTF8_MAXLEN];
+ U8 result[UTF8_MAXLEN+1];
const char *ptr = s;
STRLEN len;
/* Bug: warns about bad utf8 even if we are short on bytes
@@ -2643,7 +2643,7 @@ S_pack_rec(pTHX_ SV *cat, tempsym_t* symptr, SV **beglist, SV **endlist )
fromstr = NEXTFROM;
auv = SvUV_no_inf(fromstr, datumtype);
if (utf8) {
- U8 buffer[UTF8_MAXLEN], *endb;
+ U8 buffer[UTF8_MAXLEN+1], *endb;
endb = uvchr_to_utf8_flags(buffer, UNI_TO_NATIVE(auv), 0);
if (cur+(endb-buffer)*UTF8_EXPAND >= end) {
*cur = '\0';