From 45e788d5d588375789b3f3cbe1ed3c8ce7ccb970 Mon Sep 17 00:00:00 2001 From: Jimmy Berry Date: Thu, 15 Feb 2018 09:28:33 -0600 Subject: [PATCH] pkglistgen: solv_merge(): skip when inputs are older than merged. --- pkglistgen.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkglistgen.py b/pkglistgen.py index e389dbc0..a01084ba 100755 --- a/pkglistgen.py +++ b/pkglistgen.py @@ -784,6 +784,13 @@ class CommandLineInterface(ToolBase.CommandLineInterface): self.solv_merge(solv_file, solv_file_nonfree, solv_file_merged) def solv_merge(self, solv1, solv2, solv_merged): + if os.path.exists(solv_merged): + modified = map(os.path.getmtime, [solv1, solv2, solv_merged]) + if max(modified) <= modified[2]: + # The two inputs were modified before or at the same as merged. + logger.debug('merge skipped for {}'.format(solv_merged)) + return + with open(solv_merged, 'w') as handle: p = subprocess.Popen(['mergesolv', solv1, solv2], stdout=handle) p.communicate()