cannot rename to a string which differs only by case

Bug #243512 reported by Patrick Byrne
This bug report is a duplicate of:  Bug #228348: Problem changing names to files. Edit Remove
4
Affects Status Importance Assigned to Milestone
nautilus (Ubuntu)
Invalid
Low
Ubuntu Desktop Bugs

Bug Description

Binary package hint: nautilus

[Ubuntu 8.04 Nautilus 2.22.3]

Hi,

There appears to be a bug in the nautilus file rename feature.

You cannot rename a file to a name which differs only by case from the original name. For example, renaming a folder named 'Music' to music is not allowed. nautilus thinks that there is already a file called 'music' there. This would appear to be because the very file which is being renamed is matching a case-insensitive search for an existing file. The code should not count the file-being-renamed as a match in this case.

It is possible to rename 'Music' to 'music' by going through an intermediate step, eg 'Music' -> 'mMusic' -> 'music'.

Thanks,
Patrick Byrne

Revision history for this message
A. Walton (awalton) wrote :

Thanks for your bug. Please check that the filesystem supports this kind of rename (e.g. Fat works such that "Folder" and "folder" are the same file). If this is the case, your bug is a duplicate of 238391. Thanks again.

Changed in nautilus:
assignee: nobody → desktop-bugs
importance: Undecided → Low
status: New → Incomplete
Revision history for this message
Pedro Villavicencio (pedro) wrote :

Thanks for your report, in which filesystem are you doing that? if it's fat there's a bug about it bug 228348

Revision history for this message
Patrick Byrne (pjlbyrne) wrote :

Hi, it is my main filesystem partition, which is ext3.

ext3 does of course permit case-sensitive renaming. It is possible on the console to type:
  > ls
  Music
 > mv Music music
 > ls
 music

The problem is not that the filesystem does not permit the renaming. The problem seems to be that nautilus does not permit renaming (eg) 'Music' to 'music' because it thinks that there is already a file/folder present with the new name of 'music'. This is true inasmuch as the file/folder being renamed is called 'Music' (which is the same but for the case). It seems to me that code in nautilus is picking up the file-being-renamed as a file-which-has-the-same-name-preventing-renaming.

I suppose that the code fix for this would be, once the name conflict is found, to check if the conflicting file is actually the same as the file-being-renamed. (same inode?). This should allow in-place renaming of files to strings which are (case-insensitive) the same.

Regards,
Patrick Byrne

Revision history for this message
Sebastien Bacher (seb128) wrote :

not confirming on my hardy installation, renaming works correctly

Revision history for this message
Patrick Byrne (pjlbyrne) wrote :

I am very sorry, the problem was occurring on a fat32 filesystem. I still think it is a valid problem: even though the base FAT32 filenames are only case-insensitive 8.3 format, the extended information for long, case-sensitive filenames is clearly being stored on top of this somewhere. I maintain that nautilus should allow renaming of a file/folder from 'Music' to 'music', without complaining about a duplicate.

Revision history for this message
Pedro Villavicencio (pedro) wrote :

Thanks for the bug report. This particular bug has already been reported into our bug tracking system, but please feel free to report any further bugs you find.

Changed in nautilus:
status: Incomplete → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.