summaryrefslogtreecommitdiff
path: root/ruby.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-12-08 02:15:47 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-12-08 02:15:47 +0000
commitba274d1f46ac76593cfff79b735c64de568cc008 (patch)
tree61d6388412111dc90de156539669cc58d6a49359 /ruby.c
parentecc83033ba33c15e1dc0602ee524e163d42a7fd4 (diff)
* ruby.c (proc_options): source-encoding option.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ruby.c')
-rw-r--r--ruby.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/ruby.c b/ruby.c
index b3aa78fac8..880adb54e9 100644
--- a/ruby.c
+++ b/ruby.c
@@ -960,6 +960,10 @@ proc_options(int argc, char **argv, struct cmdline_options *opt, int envopt)
if (!*(s = ++p)) break;
set_encoding_part(internal);
if (!*(s = ++p)) break;
+#if ALLOW_DEFAULT_SOURCE_ENCODING
+ set_encoding_part(source);
+ if (!*(s = ++p)) break;
+#endif
rb_raise(rb_eRuntimeError, "extra argument for %s: %s",
(arg[1] == '-' ? "--encoding" : "-E"), s);
# undef set_encoding_part
@@ -971,6 +975,11 @@ proc_options(int argc, char **argv, struct cmdline_options *opt, int envopt)
else if (is_option_with_arg("external-encoding", Qfalse, Qtrue)) {
set_external_encoding_once(opt, s, 0);
}
+#if ALLOW_DEFAULT_SOURCE_ENCODING
+ else if (is_option_with_arg("source-encoding", Qfalse, Qtrue)) {
+ set_source_encoding_once(opt, s, 0);
+ }
+#endif
else if (strcmp("version", s) == 0) {
if (envopt) goto noenvopt_long;
opt->version = 1;