summaryrefslogtreecommitdiff
path: root/rdiff-backup/rdiff_backup/increment.py
diff options
context:
space:
mode:
authorben <ben@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109>2002-03-21 07:34:29 +0000
committerben <ben@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109>2002-03-21 07:34:29 +0000
commita2e3c38d72877dd9142d802e76047e10cf490e19 (patch)
treefd912dd37d0afe96adf760606d65f7b302c0678e /rdiff-backup/rdiff_backup/increment.py
parent8c37a5bdfdd46d5cfad6e9d67925ddef9ca382bf (diff)
downloadrdiff-backup-a2e3c38d72877dd9142d802e76047e10cf490e19.tar.gz
Added hardlink support, refactored some test cases
git-svn-id: http://svn.savannah.nongnu.org/svn/rdiff-backup/trunk@7 2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109
Diffstat (limited to 'rdiff-backup/rdiff_backup/increment.py')
-rw-r--r--rdiff-backup/rdiff_backup/increment.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/rdiff-backup/rdiff_backup/increment.py b/rdiff-backup/rdiff_backup/increment.py
index 4ed6a39..a290d3c 100644
--- a/rdiff-backup/rdiff_backup/increment.py
+++ b/rdiff-backup/rdiff_backup/increment.py
@@ -141,11 +141,14 @@ class Inc:
"""
if diff_rorp:
- if dsrp.isreg() and diff_rorp.isreg():
+ if diff_rorp.isreg() and (dsrp.isreg() or
+ diff_rorp.isflaglinked()):
tf = TempFileManager.new(dsrp)
def init_thunk():
- Rdiff.patch_with_attribs_action(dsrp, diff_rorp,
- tf).execute()
+ if diff_rorp.isflaglinked():
+ Hardlink.link_rp(diff_rorp, tf, dsrp)
+ else: Rdiff.patch_with_attribs_action(dsrp, diff_rorp,
+ tf).execute()
Inc.Increment_action(tf, dsrp, incpref).execute()
Robust.make_tf_robustaction(init_thunk, (tf,),
(dsrp,)).execute()