391 return |
391 return |
392 fname = Utilities.toNativeSeparators(fname) |
392 fname = Utilities.toNativeSeparators(fname) |
393 |
393 |
394 eol = e5App().getObject("Project").getEolString() |
394 eol = e5App().getObject("Project").getEolString() |
395 try: |
395 try: |
396 f = open(fname, "w", encoding="utf-8", newline="") |
396 with open(fname, "w", encoding="utf-8", newline="") as f: |
397 f.write(eol.join(self.contents.toPlainText().splitlines())) |
397 f.write(eol.join(self.contents.toPlainText().splitlines())) |
398 f.close() |
|
399 except IOError as why: |
398 except IOError as why: |
400 E5MessageBox.critical( |
399 E5MessageBox.critical( |
401 self, self.tr('Save Diff'), |
400 self, self.tr('Save Diff'), |
402 self.tr( |
401 self.tr( |
403 '<p>The patch file <b>{0}</b> could not be saved.' |
402 '<p>The patch file <b>{0}</b> could not be saved.' |