Skip to content

Commit e7c1df8

Browse files
committed
small fixups
1 parent 8c3d8d5 commit e7c1df8

File tree

3 files changed

+4
-11
lines changed

3 files changed

+4
-11
lines changed

include/ruby/st.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,6 @@ VALUE rb_managed_st_table_create_strtable(size_t capa);
192192
VALUE rb_managed_st_table_create_strcasetable(size_t capa);
193193
int rb_managed_st_table_lookup(VALUE tbl, st_data_t key, st_data_t *value);
194194
int rb_managed_st_table_insert(VALUE tbl, st_data_t key, st_data_t value);
195-
void rb_managed_st_table_add_direct(VALUE tbl, st_data_t key, st_data_t value);
196195
VALUE rb_managed_st_table_dup(VALUE old_table);
197196

198197
RUBY_SYMBOL_EXPORT_END

st.c

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3282,13 +3282,6 @@ rb_managed_st_table_insert(VALUE tbl, st_data_t key, VALUE value)
32823282
return st_insert(st, key, (st_data_t)value);
32833283
}
32843284

3285-
void
3286-
rb_managed_st_table_add_direct(VALUE tbl, st_data_t key, st_data_t value)
3287-
{
3288-
st_table *st = managed_st_table_ptr(tbl);
3289-
return st_add_direct(st, key, value);
3290-
}
3291-
32923285
static int
32933286
managed_st_table_dup_i(st_data_t key, st_data_t val, st_data_t data) {
32943287
st_table *tbl = (st_table *)data;

transcode.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,7 @@ gen_src_to_dst_encodings_key(const char *key_buf, const char *sname, const char
220220
memcpy(p, ":", 1);
221221
p += 1;
222222
size_t dlen = strlen(dname);
223-
RUBY_ASSERT(slen + dlen < SRC_ENC_TO_DST_ENC_KEY_SIZE);
223+
RUBY_ASSERT(slen + dlen + 1 < SRC_ENC_TO_DST_ENC_KEY_SIZE);
224224
memcpy(p, dname, dlen);
225225
}
226226

@@ -280,7 +280,8 @@ get_transcoder_entry(const char *sname, const char *dname)
280280
char key_buf[SRC_ENC_TO_DST_ENC_KEY_SIZE] = { 0 };
281281
gen_src_to_dst_encodings_key(key_buf, sname, dname);
282282
VALUE entry_val;
283-
if (rb_managed_st_table_lookup(fast_transcoder_entry_table, (st_data_t)key_buf, &entry_val)) {
283+
VALUE tbl = RUBY_ATOMIC_VALUE_LOAD(fast_transcoder_entry_table);
284+
if (rb_managed_st_table_lookup(tbl, (st_data_t)key_buf, &entry_val)) {
284285
return (transcoder_entry_t*)entry_val;
285286
}
286287
return NULL;
@@ -1057,7 +1058,7 @@ trans_open_i(const char *sname, const char *dname, int depth, void *arg)
10571058
if (!toarg->entries) {
10581059
size_t num = depth+1+toarg->num_additional+1;
10591060
toarg->entries = ALLOC_N(transcoder_entry_t *, num);
1060-
memset(toarg->entries + num - 1, 0, sizeof(transcoder_entry_t*)); // last entry is 0
1061+
memset(toarg->entries + num - 1, 0, sizeof(transcoder_entry_t*)); // last entry is 0 so we can loop over it
10611062
}
10621063
toarg->entries[depth] = get_transcoder_entry(sname, dname);
10631064
}

0 commit comments

Comments
 (0)