merge revision(s) 41781: [Backport #8604]

* lib/fileutils.rb (FileUtils#symbolic_modes_to_i): Fix the wrong
	  character class [+-=], which happened to match all desired
	  characters but also match undesired characters.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@41811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nagachika 2013-07-06 16:58:40 +00:00
parent 26dc190247
commit f17c697c44
3 changed files with 9 additions and 3 deletions

View file

@ -1,3 +1,9 @@
Sun Jul 7 01:58:25 2013 Akinori MUSHA <knu@iDaemons.org>
* lib/fileutils.rb (FileUtils#symbolic_modes_to_i): Fix the wrong
character class [+-=], which happened to match all desired
characters but also match undesired characters.
Sun Jul 7 01:54:44 2013 Akinori MUSHA <knu@iDaemons.org> Sun Jul 7 01:54:44 2013 Akinori MUSHA <knu@iDaemons.org>
* lib/fileutils.rb (FileUtils#chown, FileUtils#chown_R): Fix the * lib/fileutils.rb (FileUtils#chown, FileUtils#chown_R): Fix the

View file

@ -904,8 +904,8 @@ module FileUtils
def symbolic_modes_to_i(modes, path) #:nodoc: def symbolic_modes_to_i(modes, path) #:nodoc:
current_mode = (File.stat(path).mode & 07777) current_mode = (File.stat(path).mode & 07777)
modes.split(/,/).inject(0) do |mode, mode_sym| modes.split(/,/).inject(0) do |mode, mode_sym|
mode_sym = "a#{mode_sym}" if mode_sym =~ %r!^[+-=]! mode_sym = "a#{mode_sym}" if mode_sym =~ %r!^[=+-]!
target, mode = mode_sym.split %r![+-=]! target, mode = mode_sym.split %r![=+-]!
user_mask = user_mask(target) user_mask = user_mask(target)
mode_mask = mode_mask(mode ? mode : "", path) mode_mask = mode_mask(mode ? mode : "", path)

View file

@ -1,6 +1,6 @@
#define RUBY_VERSION "2.0.0" #define RUBY_VERSION "2.0.0"
#define RUBY_RELEASE_DATE "2013-07-07" #define RUBY_RELEASE_DATE "2013-07-07"
#define RUBY_PATCHLEVEL 253 #define RUBY_PATCHLEVEL 254
#define RUBY_RELEASE_YEAR 2013 #define RUBY_RELEASE_YEAR 2013
#define RUBY_RELEASE_MONTH 7 #define RUBY_RELEASE_MONTH 7