Project

General

Profile

Actions

Bug #11021

closed

FileUtils.mv displays the wrong destination when Errno::EEXIST is raised

Added by britto (João Britto) about 9 years ago. Updated almost 9 years ago.

Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-darwin14]
[ruby-core:<unknown>]

Description

Suppose we have the following directory structure:

$ cd /tmp
$ mkdir -p ruby/a
$ mkdir ruby/a/b
$ mkdir ruby/b
$ tree ruby
ruby
├── a
│   └── b
└── b

3 directories, 0 files

When we try to move b inside a, there is a name clash and Errno::EEXIST is raised.

$ irb
>> require 'fileutils'
=> true
>> FileUtils.mv 'ruby/b', 'ruby/a'
Errno::EEXIST: File exists - ruby/a

However, the error message says ruby/a exists, which does not seem to be the proper destination. The error message should instead read ruby/a/b exists.

I am including a patch to address this issue.


Files

ruby-fileutils-mv-fix.diff (912 Bytes) ruby-fileutils-mv-fix.diff britto (João Britto), 03/31/2015 11:57 PM
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0