diff options
| author | Steven Johnstone <steven.james.johnstone@gmail.com> | 2025-11-20 11:02:33 +0000 |
|---|---|---|
| committer | git <svn-admin@ruby-lang.org> | 2025-11-20 20:06:08 +0000 |
| commit | 0b4420bfd5f32fd715704f9adcf2320971f05ab3 (patch) | |
| tree | c75e1e7e8578b644939f48e7ec92ae0e91d79e6d | |
| parent | a8f269a2c665c0a471ecb28b3265cb4eb8a7ca2e (diff) | |
[ruby/prism] Use memmove for overlapping memory ranges
Fixes https://github.com/ruby/prism/pull/3736.
https://github.com/ruby/prism/commit/1f5f192ab7
| -rw-r--r-- | prism/prism.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/prism/prism.c b/prism/prism.c index a87932f1b7..45817cdd8c 100644 --- a/prism/prism.c +++ b/prism/prism.c @@ -13467,7 +13467,7 @@ parse_target_implicit_parameter(pm_parser_t *parser, pm_node_t *node) { // remaining nodes down to fill the gap. This is extremely unlikely // to happen. if (index != implicit_parameters->size - 1) { - memcpy(&implicit_parameters->nodes[index], &implicit_parameters->nodes[index + 1], (implicit_parameters->size - index - 1) * sizeof(pm_node_t *)); + memmove(&implicit_parameters->nodes[index], &implicit_parameters->nodes[index + 1], (implicit_parameters->size - index - 1) * sizeof(pm_node_t *)); } implicit_parameters->size--; |
