Skip to content

Commit

Permalink
py/makeqstrdefs.py: Stop generating temporary intermediate file.
Browse files Browse the repository at this point in the history
In "cat" mode, output was written to a file named "out", then moved to the
location of the real output file.  There was no reason for this.

While makeqstrdefs.py does make an effort to not update the timestamp on an
existing output file that has not changed, the intermediate "out" file
isn't part of the that process.

Signed-off-by: Trent Piepho <[email protected]>
  • Loading branch information
xyzzy42 committed Dec 15, 2023
1 parent 2e101a8 commit 0e706a6
Showing 1 changed file with 3 additions and 9 deletions.
12 changes: 3 additions & 9 deletions py/makeqstrdefs.py
Original file line number Diff line number Diff line change
Expand Up @@ -138,15 +138,12 @@ def cat_together():

hasher = hashlib.md5()
all_lines = []
outf = open(args.output_dir + "/out", "wb")
for fname in glob.glob(args.output_dir + "/*." + args.mode):
with open(fname, "rb") as f:
lines = f.readlines()
all_lines += lines
all_lines.sort()
all_lines = b"\n".join(all_lines)
outf.write(all_lines)
outf.close()
hasher.update(all_lines)
new_hash = hasher.hexdigest()
# print(new_hash)
Expand All @@ -165,12 +162,9 @@ def cat_together():
mode_full = "Root pointer registrations"
if old_hash != new_hash or not os.path.exists(args.output_file):
print(mode_full, "updated")
try:
# rename below might fail if file exists
os.remove(args.output_file)
except:
pass
os.rename(args.output_dir + "/out", args.output_file)

with open(args.output_file, "wb") as outf:
outf.write(all_lines)
with open(args.output_file + ".hash", "w") as f:
f.write(new_hash)
else:
Expand Down

0 comments on commit 0e706a6

Please sign in to comment.