aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--parse.y2
2 files changed, 4 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index e41a0b108d..e4184c411f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,8 +1,9 @@
-Thu Oct 4 16:15:55 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
+Thu Oct 4 16:28:33 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* encoding.c (rb_obj_encoding): returns encoding of the given object.
- * parse.y (reg_compile_gen): copy encoding from source string.
+ * parse.y (reg_compile_gen): copy encoding from source string if
+ non-empty.
* re.c (Init_Regexp): new method Regexp#encoding.
diff --git a/parse.y b/parse.y
index b81e37ee0f..3b4065ac06 100644
--- a/parse.y
+++ b/parse.y
@@ -8170,7 +8170,7 @@ reg_compile_gen(struct parser_params* parser, VALUE str, int options)
compile_error(PARSER_ARG "%s", RSTRING_PTR(re));
return Qnil;
}
- rb_enc_copy(re, str);
+ if (str) rb_enc_copy(re, str);
return re;
}