summaryrefslogtreecommitdiffstats
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
commit73e8afd1d37a7aa97daa22ec33b718555a3a7856 (patch)
tree61d6388412111dc90de156539669cc58d6a49359
parentbb853f4e7d57648e9de7d2392b2afe92ecaa7981 (diff)
downloadruby-73e8afd1d37a7aa97daa22ec33b718555a3a7856.tar.gz
ruby-73e8afd1d37a7aa97daa22ec33b718555a3a7856.tar.xz
ruby-73e8afd1d37a7aa97daa22ec33b718555a3a7856.zip
* ruby.c (proc_options): source-encoding option.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@20576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ruby.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/ruby.c b/ruby.c
index b3aa78fac..880adb54e 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;