mirror of
git://git.sv.gnu.org/coreutils.git
synced 2026-08-04 15:49:42 +02:00
(copy_internal): Treat src and dest as the `same' in
`mv src symlink-to-src' when src and dest are on different partitions. Otherwise, that `mv' command would silently remove `src'. Reported by Michael Stone.
This commit is contained in:
+4
-2
@@ -429,9 +429,11 @@ copy_internal (const char *src_path, const char *dst_path,
|
||||
&& ! x->force
|
||||
|
||||
/* Allow them to be the same (and don't set `same') if
|
||||
we're in move mode and the target is a symlink. */
|
||||
we're in move mode and the target is a symlink
|
||||
on the same partition. */
|
||||
&& !(move_mode
|
||||
&& S_ISLNK (dst_sb.st_mode))
|
||||
&& S_ISLNK (dst_sb.st_mode)
|
||||
&& src_sb.st_dev == dst_sb.st_dev)
|
||||
|
||||
/* If we're making a backup, we'll detect the problem case in
|
||||
copy_reg because SRC_PATH will no longer exist. Allowing
|
||||
|
||||
Reference in New Issue
Block a user