diff --git a/generateChangemarks/changemarks.py b/generateChangemarks/changemarks.py index 63c3f3e2691292624a2d9f726cb6ec9e12961aec..5f7ee2db45a5fa0df687b10f2fb208be9e937512 100644 --- a/generateChangemarks/changemarks.py +++ b/generateChangemarks/changemarks.py @@ -153,16 +153,20 @@ https://forge.etsi.org/rep/cdm/pipeline-scripts/-/blob/main/common/Dockerfile.st for patched_file in mr.patch_set: if patched_file.source_file.startswith("a/TS"): logging.debug(f"Looking at changes in {patched_file.source_file}") + lines_added = 0 + lines_removed = 0 for change in patched_file: - change_start_line, change_end_line, lines_added, lines_removed = changeDetails(change) + change_start_line, change_end_line, change_lines_added, change_lines_removed = changeDetails(change) + lines_added = lines_added + change_lines_added + lines_removed = lines_removed + change_lines_removed # Check the previous changed_clause - if (changed_clause.from_id <= change_start_line) and (changed_clause.to_id + lines_added - lines_removed >= change_end_line): + if (changed_clause.from_id <= change_start_line - lines_added + lines_removed) and (changed_clause.to_id + lines_added - lines_removed >= change_end_line): generateMDforChange(progress, mdLines, changed_clause, change, outDirectory, True) break i = 0 # Check all clauses for clause in clauses: - if (clause.from_id <= change_start_line) and (clause.to_id + lines_added - lines_removed >= change_end_line): + if (clause.from_id <= change_start_line - lines_added + lines_removed) and (clause.to_id + lines_added - lines_removed >= change_end_line): changed_clause = clauses.pop(i) changed_clauses.append(clause) generateMDforChange(progress, mdLines, changed_clause, change, outDirectory, False)