diff options
author | NAKAMURA Usaku <usa@ruby-lang.org> | 2022-07-25 20:39:12 +0900 |
---|---|---|
committer | NAKAMURA Usaku <usa@ruby-lang.org> | 2022-07-25 20:39:12 +0900 |
commit | 9733f4d0f00a38b5f77ee2e2fffdff866828cd66 (patch) | |
tree | 0bdd070c39d5c0d1869f66572c282809bb72eab7 | |
parent | 6ac4449fce6257ffe653a743880cead2e43167e8 (diff) | |
download | ruby-9733f4d0f00a38b5f77ee2e2fffdff866828cd66.tar.gz |
merge revision(s) edf01d4e82d8e44ee30ec41fbcb7f802bc8b8c5d: [Backport #18772]
Treat NULL fake string as an empty string
And the NULL string must be of size 0.
---
string.c | 5 +++++
1 file changed, 5 insertions(+)
-rw-r--r-- | string.c | 5 | ||||
-rw-r--r-- | version.h | 6 |
2 files changed, 8 insertions, 3 deletions
@@ -414,6 +414,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); @@ -12,11 +12,11 @@ # define RUBY_VERSION_MINOR RUBY_API_VERSION_MINOR #define RUBY_VERSION_TEENY 5 #define RUBY_RELEASE_DATE RUBY_RELEASE_YEAR_STR"-"RUBY_RELEASE_MONTH_STR"-"RUBY_RELEASE_DAY_STR -#define RUBY_PATCHLEVEL 210 +#define RUBY_PATCHLEVEL 211 #define RUBY_RELEASE_YEAR 2022 -#define RUBY_RELEASE_MONTH 6 -#define RUBY_RELEASE_DAY 18 +#define RUBY_RELEASE_MONTH 7 +#define RUBY_RELEASE_DAY 25 #include "ruby/version.h" |