diff options
| author | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2024-01-24 14:10:05 +0900 |
|---|---|---|
| committer | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2024-01-24 14:10:05 +0900 |
| commit | 270ad763594023b87a09027e52deee561ecd3b62 (patch) | |
| tree | b43f06d59924122176bbb86606c3943985bc7722 /lib | |
| parent | 2f06e4f73998141292ee2a08146af3e63a717dae (diff) | |
Revert "Ensure File.open applies default umask on gem extract"
This reverts commit 01f9766aa05182a7bbdc914a5dcd8a36ebade861.
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/rubygems/package.rb | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/lib/rubygems/package.rb b/lib/rubygems/package.rb index 7b4cab7964..387e40ffd7 100644 --- a/lib/rubygems/package.rb +++ b/lib/rubygems/package.rb @@ -448,15 +448,13 @@ EOM end unless directories.include?(mkdir) - mkdir_mode = 0o755 if dir_mode - mkdir_mode ||= entry.header.mode if entry.directory? - mkdir_mode &= ~File.umask if mkdir_mode - FileUtils.mkdir_p mkdir, mode: mkdir_mode + FileUtils.mkdir_p mkdir, mode: dir_mode ? 0o755 : (entry.header.mode if entry.directory?) directories << mkdir end if entry.file? - File.open(destination, "wb", file_mode(entry.header.mode)) {|out| copy_stream(entry, out) } + File.open(destination, "wb") {|out| copy_stream(entry, out) } + FileUtils.chmod file_mode(entry.header.mode), destination end verbose destination |
