diff --git a/ess/TraceWin.py b/ess/TraceWin.py
index 3160fea9a244fdbe0e8df9c7920609f4bcf1600b..5baaae7b2e5e5d7cc9d19ae36765bde7646ba372 100644
--- a/ess/TraceWin.py
+++ b/ess/TraceWin.py
@@ -1718,8 +1718,8 @@ class project:
                 v = wrap(struct.pack(o[1], v).hex(), 2)
                 for i in range(len(v)):
                     hexlist[o[0] + i] = v[i]
-
-        open(fname, "wb").write(bytes.fromhex("".join(hexlist)))
+        with open(fname, "wb") as fout:
+            fout.write(bytes.fromhex("".join(hexlist)))
 
     def compare_to(self, other):
         """