0
0
mirror of https://github.com/vim/vim.git synced 2025-09-29 04:34:16 -04:00

patch 7.4.1400

Problem:    Perl eval doesn't work properly on 64-bit big-endian machine.
Solution:   Use 32 bit type for the key. (Danek Duvall)
This commit is contained in:
Bram Moolenaar
2016-02-23 16:06:28 +01:00
parent 48e330aff9
commit 254ebaf068
2 changed files with 5 additions and 3 deletions

View File

@@ -1097,7 +1097,7 @@ perl_to_vim(SV *sv, typval_T *rettv)
case SVt_PVHV: /* dictionary */ case SVt_PVHV: /* dictionary */
{ {
HE * entry; HE * entry;
size_t key_len; I32 key_len;
char * key; char * key;
dictitem_T * item; dictitem_T * item;
SV * item2; SV * item2;
@@ -1121,9 +1121,9 @@ perl_to_vim(SV *sv, typval_T *rettv)
for (entry = hv_iternext((HV *)sv); entry; entry = hv_iternext((HV *)sv)) for (entry = hv_iternext((HV *)sv); entry; entry = hv_iternext((HV *)sv))
{ {
key_len = 0; key_len = 0;
key = hv_iterkey(entry, (I32 *)&key_len); key = hv_iterkey(entry, &key_len);
if (!key || !key_len || strlen(key) < key_len) { if (!key || !key_len || strlen(key) < (size_t)key_len) {
EMSG2("Malformed key Dictionary '%s'", key && *key ? key : "(empty)"); EMSG2("Malformed key Dictionary '%s'", key && *key ? key : "(empty)");
break; break;
} }

View File

@@ -748,6 +748,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
1400,
/**/ /**/
1399, 1399,
/**/ /**/