We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent e80134f commit 55f51beCopy full SHA for 55f51be
khal/khalendar/vdir.py
@@ -149,18 +149,26 @@ def atomic_write(dest, overwrite=False):
149
150
try:
151
yield file
152
- except Exception:
+ except OSError:
153
os.unlink(src)
154
raise
155
else:
156
file.flush()
157
file.close()
158
159
- if overwrite:
160
- os.rename(src, dest)
161
- else:
162
- os.link(src, dest)
163
- os.unlink(src)
+ try:
+ if overwrite:
+ os.rename(src, dest)
+ else:
+ os.link(src, dest)
164
+ os.unlink(src)
165
166
+ # Ensure temp file is cleaned up if link/rename fails
167
168
169
170
+ pass # File might already be deleted
171
+ raise
172
173
174
class VdirBase:
0 commit comments