diff options
author | Koichi Sasada <[email protected]> | 2023-12-15 03:42:40 +0900 |
---|---|---|
committer | Koichi Sasada <[email protected]> | 2023-12-15 11:58:43 +0900 |
commit | 7ba2506232d3fa6c4e82e3708c0ff746a1a8de5c (patch) | |
tree | 68c7c61b32ea0626cb10fa7d0a097d27b83ef4a7 /parser_st.c | |
parent | 29e99c84ae8059cd308cf1c06be05f62c55cd68d (diff) |
check modifcation whil ar->st
* delete `ar_try_convert` but use `ar_force_convert_table`
to make program simple.
* `ar_force_convert_table` checks hash modification while
calling `#hash` method with the following strategy:
1. copy keys (and vals) of ar_table
2. calc hashes from keys
3. check copied keys and hash's keys. if not matched, repeat from 1
fix [Bug #20050]
Diffstat (limited to 'parser_st.c')
-rw-r--r-- | parser_st.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/parser_st.c b/parser_st.c index c7a45d25e6..17f669e763 100644 --- a/parser_st.c +++ b/parser_st.c @@ -107,6 +107,7 @@ nonempty_memcpy(void *dest, const void *src, size_t n) #define st_get_key rb_parser_st_get_key #undef st_add_direct #define st_add_direct rb_parser_st_add_direct +#define rb_st_add_direct_with_hash rb_parser_st_add_direct_with_hash #undef st_insert2 #define st_insert2 rb_parser_st_insert2 #undef st_replace |