--- a/FileOperation.st Thu Sep 21 17:39:10 2006 +0200
+++ b/FileOperation.st Thu Sep 21 18:31:58 2006 +0200
@@ -1241,7 +1241,7 @@
renameFile:oldFile to:newName
"rename a file (or directory)"
- |newFile msg resources|
+ |newFile msg resources sameFile|
(oldFile isNil or:[newName isNil]) ifTrue:[
result := false.
@@ -1263,6 +1263,11 @@
oldFile pathName = newFile pathName ifTrue:[
^ self.
].
+ Filename isCaseSensitive ifFalse:[
+ sameFile := (oldFile pathName sameAs: newFile pathName)
+ ] ifTrue:[
+ sameFile := false
+ ].
resources := Dialog classResources.
@@ -1276,21 +1281,25 @@
result := false.
^ self.
] do:[
- newFile exists ifTrue:[
- (newFile sameContentsAs:oldFile) ifTrue:[
- msg := '%1 exists [with same contents] - rename (i.e. overwrite) anyway ?'
- ] ifFalse:[
- msg := '%1 exists - rename (i.e. overwrite) anyway ?'
+ sameFile ifFalse:[
+ newFile exists ifTrue:[
+ (newFile sameContentsAs:oldFile) ifTrue:[
+ msg := '%1 exists [with same contents] - rename (i.e. overwrite) anyway ?'
+ ] ifFalse:[
+ msg := '%1 exists - rename (i.e. overwrite) anyway ?'
+ ].
+ (Dialog confirmWithCancel:(resources string:msg with:newName allBold) default:false) ifFalse:[
+ result := false.
+ ^ self.
+ ]
].
- (Dialog confirmWithCancel:(resources string:msg with:newName allBold) default:false) ifFalse:[
- result := false.
- ^ self.
- ]
].
oldFile renameTo:newFile.
self renamedFiles add:newFile.
].
result := true.
+
+ "Modified: / 21-09-2006 / 18:32:12 / cg"
!
renameFiles:aColOfFiles
@@ -1336,5 +1345,5 @@
!FileOperation class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.74 2006-09-05 10:56:18 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.75 2006-09-21 16:31:58 cg Exp $'
! !