mirror of
https://github.com/9001/copyparty.git
synced 2025-08-17 09:02:15 -06:00
rewrite other symlinks after the actual move;
fixes volumes where symlinking is disabled
This commit is contained in:
parent
82f98dd54d
commit
68c6794d33
|
@ -2825,21 +2825,6 @@ class Up2k(object):
|
|||
ftime = ftime_
|
||||
fsize = fsize_ or 0
|
||||
|
||||
if w:
|
||||
assert c1
|
||||
if c2 and c2 != c1:
|
||||
self._copy_tags(c1, c2, w)
|
||||
|
||||
self._forget_file(svn.realpath, srem, c1, w, c1 != c2)
|
||||
self._relink(w, svn.realpath, srem, dabs)
|
||||
curs.add(c1)
|
||||
|
||||
if c2:
|
||||
self.db_add(c2, w, drd, dfn, ftime, fsize, ip or "", at or 0)
|
||||
curs.add(c2)
|
||||
else:
|
||||
self.log("not found in src db: [{}]".format(svp))
|
||||
|
||||
try:
|
||||
atomic_move(sabs, dabs)
|
||||
except OSError as ex:
|
||||
|
@ -2856,6 +2841,21 @@ class Up2k(object):
|
|||
|
||||
os.unlink(b1)
|
||||
|
||||
if w:
|
||||
assert c1
|
||||
if c2 and c2 != c1:
|
||||
self._copy_tags(c1, c2, w)
|
||||
|
||||
self._forget_file(svn.realpath, srem, c1, w, c1 != c2)
|
||||
self._relink(w, svn.realpath, srem, dabs)
|
||||
curs.add(c1)
|
||||
|
||||
if c2:
|
||||
self.db_add(c2, w, drd, dfn, ftime, fsize, ip or "", at or 0)
|
||||
curs.add(c2)
|
||||
else:
|
||||
self.log("not found in src db: [{}]".format(svp))
|
||||
|
||||
if xar:
|
||||
runhook(self.log, xar, dabs, dvp, "", uname, "", 0, 0, "")
|
||||
|
||||
|
|
Loading…
Reference in a new issue