diff options
Diffstat (limited to 'rdiff-backup/src/increment.py')
-rw-r--r-- | rdiff-backup/src/increment.py | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/rdiff-backup/src/increment.py b/rdiff-backup/src/increment.py index 4ed6a39..a290d3c 100644 --- a/rdiff-backup/src/increment.py +++ b/rdiff-backup/src/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() |