From: Zac Medico Date: Fri, 21 Oct 2011 08:11:32 +0000 (-0700) Subject: UpdateChangeLog: tweak clold_lines logic X-Git-Tag: v2.2.0_alpha70~1 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=0c63881bf206f8b5f707b1ca4ea2b171d740913d;p=portage.git UpdateChangeLog: tweak clold_lines logic There are two cases here that have to be mutually exclusive. --- diff --git a/pym/repoman/utilities.py b/pym/repoman/utilities.py index fa5834618..a79ea2cd5 100644 --- a/pym/repoman/utilities.py +++ b/pym/repoman/utilities.py @@ -771,25 +771,28 @@ def UpdateChangeLog(pkgdir, user, msg, skel_path, category, package, # append stuff from old ChangeLog if clold_file is not None: - # clold_lines may contain a saved non-header line - # that we want to write first. - # Also, append this line to clnew_lines so that the - # unified_diff call doesn't show it as removed. - for line in clold_lines: - f.write(line) - clnew_lines.append(line) + + if clold_lines: + # clold_lines may contain a saved non-header line + # that we want to write first. + # Also, append this line to clnew_lines so that the + # unified_diff call doesn't show it as removed. + for line in clold_lines: + f.write(line) + clnew_lines.append(line) + + else: + # ensure that there is no more than one blank + # line after our new entry + for line in clold_file: + if line.strip(): + f.write(line) + break # Now prepend old_header_lines to clold_lines, for use # in the unified_diff call below. clold_lines = old_header_lines + clold_lines - # ensure that there is no more than one blank - # line after our new entry - for line in clold_file: - if line.strip(): - f.write(line) - break - for line in clold_file: f.write(line) clold_file.close()