From 33192e5e5dceaee1081ff7d0e65359cb8ba062b7 Mon Sep 17 00:00:00 2001 From: Thomas Waldmann Date: Fri, 4 Mar 2022 22:39:22 +0100 Subject: [PATCH] import-tar: fix mtime type bug looks like with a .tar file created by the tar tool, tarinfo.mtime is a float [s]. So, after converting to nanoseconds, we need to cast to int because that's what Item.mtime wants. also added a safe_ns() there to clip values to the safe range. --- src/borg/archive.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/borg/archive.py b/src/borg/archive.py index 279a0e131..728c76bb1 100644 --- a/src/borg/archive.py +++ b/src/borg/archive.py @@ -1447,7 +1447,7 @@ class TarfileObjectProcessors: def create_helper(self, tarinfo, status=None, type=None): item = Item(path=make_path_safe(tarinfo.name), mode=tarinfo.mode | type, uid=tarinfo.uid, gid=tarinfo.gid, user=tarinfo.uname or None, group=tarinfo.gname or None, - mtime=tarinfo.mtime * 1000**3) + mtime=safe_ns(int(tarinfo.mtime * 1000**3))) yield item, status # if we get here, "with"-block worked ok without error/exception, the item was processed ok... self.add_item(item, stats=self.stats)