summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-11-01 15:01:51 +0000
committeryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-11-01 15:01:51 +0000
commit500be74c6a75652c4abbfa7048824f4a1c6fb153 (patch)
treeb9dfa0c877d3e1575af4bfe5e15d075a1cfb9030
parent5e13dd7b53eab210dd1cea28661a3a5a638a5bcd (diff)
merges r29181 from trunk into ruby_1_9_2.
-- * file.c (rb_file_s_readlink): symlink target should be in filesystem encoding. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_2@29659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--file.c2
-rw-r--r--test/ruby/test_file_exhaustive.rb5
-rw-r--r--version.h8
4 files changed, 14 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 7b7b4b2f74..7ee8ccf001 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Sat Sep 4 23:48:47 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * file.c (rb_file_s_readlink): symlink target should be in
+ filesystem encoding.
+
Wed Sep 1 14:33:36 2010 NARUSE, Yui <naruse@ruby-lang.org>
* enum.c (enum_zip): fix typo of rdoc.
diff --git a/file.c b/file.c
index 0f1e24ba2e..6232f7f46e 100644
--- a/file.c
+++ b/file.c
@@ -2446,7 +2446,7 @@ rb_file_s_readlink(VALUE klass, VALUE path)
xfree(buf);
rb_sys_fail_path(path);
}
- v = rb_tainted_str_new(buf, rv);
+ v = rb_filesystem_str_new(buf, rv);
xfree(buf);
return v;
diff --git a/test/ruby/test_file_exhaustive.rb b/test/ruby/test_file_exhaustive.rb
index 4615bceb05..5a62db1124 100644
--- a/test/ruby/test_file_exhaustive.rb
+++ b/test/ruby/test_file_exhaustive.rb
@@ -354,11 +354,14 @@ class TestFileExhaustive < Test::Unit::TestCase
assert_raise(Errno::EEXIST) { File.link(@file, @file) }
end
- def test_symlink2
+ def test_readlink
return unless @symlinkfile
assert_equal(@file, File.readlink(@symlinkfile))
assert_raise(Errno::EINVAL) { File.readlink(@file) }
assert_raise(Errno::ENOENT) { File.readlink(@nofile) }
+ if fs = Encoding.find("filesystem")
+ assert_equal(fs, File.readlink(@symlinkfile).encoding)
+ end
rescue NotImplementedError
end
diff --git a/version.h b/version.h
index a0a4d62bbc..781dc47a25 100644
--- a/version.h
+++ b/version.h
@@ -1,13 +1,13 @@
#define RUBY_VERSION "1.9.2"
-#define RUBY_PATCHLEVEL 29
+#define RUBY_PATCHLEVEL 30
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 9
#define RUBY_VERSION_TEENY 1
#define RUBY_RELEASE_YEAR 2010
-#define RUBY_RELEASE_MONTH 10
-#define RUBY_RELEASE_DAY 23
-#define RUBY_RELEASE_DATE "2010-10-23"
+#define RUBY_RELEASE_MONTH 11
+#define RUBY_RELEASE_DAY 1
+#define RUBY_RELEASE_DATE "2010-11-01"
#include "ruby/version.h"