Treat NULL fake string as an empty string

And the NULL string must be of size 0.
This commit is contained in:
Nobuyoshi Nakada 2021-08-17 18:45:36 +09:00
Родитель 21fd83a823
Коммит edf01d4e82
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 7CD2805BFA3770C6
1 изменённых файлов: 5 добавлений и 0 удалений

Просмотреть файл

@ -413,6 +413,11 @@ setup_fake_str(struct RString *fake_str, const char *name, long len, int encidx)
fake_str->basic.flags = T_STRING|RSTRING_NOEMBED|STR_NOFREE|STR_FAKESTR;
/* SHARED to be allocated by the callback */
if (!name) {
RUBY_ASSERT_ALWAYS(len == 0);
name = "";
}
ENCODING_SET_INLINED((VALUE)fake_str, encidx);
RBASIC_SET_CLASS_RAW((VALUE)fake_str, rb_cString);