summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-11-28 13:16:00 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-11-28 13:16:00 +0000
commit78b0d7ac1c12fc2b561f8dfa1f89c81e8c493809 (patch)
treea5624a23ea0a105ab41e2e2c35ad0cc57913d7d2
parentf2a1f32f48d4a53a0b6acc4e0088df77f94ca2c0 (diff)
string.c: fix zero-length array
* string.c (mapping_buffer): get rid of zero-length array member, which is not a part of C90. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--string.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/string.c b/string.c
index 9b6961c392..96115e0ce0 100644
--- a/string.c
+++ b/string.c
@@ -5897,7 +5897,7 @@ typedef struct mapping_buffer {
size_t capa;
size_t used;
struct mapping_buffer *next;
- OnigUChar space[0];
+ OnigUChar space[1];
} mapping_buffer;
static VALUE
@@ -5923,7 +5923,7 @@ rb_str_casemap(VALUE source, OnigCaseFoldType *flags, rb_encoding *enc)
if (CASEMAP_DEBUG) {
fprintf(stderr, "Buffer allocation, capa is %"PRIuSIZE"\n", capa); /* for tuning */
}
- current_buffer->next = (mapping_buffer*)ALLOC_N(char, sizeof(mapping_buffer)+capa);
+ current_buffer->next = (mapping_buffer*)ALLOC_N(char, offsetof(mapping_buffer, space)+capa);
current_buffer = current_buffer->next;
current_buffer->next = NULL;
current_buffer->capa = capa;