From 522d7aa597130a82d957db7ac4dd60f399b3aaf7 Mon Sep 17 00:00:00 2001 From: ptresson <paul.tresson@ird.fr> Date: Fri, 7 Mar 2025 11:22:27 +0100 Subject: [PATCH] add exception handling during merging of temp files. Should be a temporary fix to #45 --- encoder.py | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/encoder.py b/encoder.py index af77533..6980bbf 100644 --- a/encoder.py +++ b/encoder.py @@ -617,12 +617,19 @@ class EncoderAlgorithm(IAMAPAlgorithm): dst_path = Path(os.path.join(self.output_subdir, "merged_tmp.tif")) - merge_tiles( - tiles=all_tiles, - dst_path=dst_path, - method=self.merge_method, - ) - self.remove_temp_files() + try: + merge_tiles( + tiles=all_tiles, + dst_path=dst_path, + method=self.merge_method, + ) + self.remove_temp_files() + + # overwritting merged_tmp.tif may be impossible in windows (e.g. if an antivirus is analysing the newly created data) + # then, merging and cleaning is impossible + except rasterio._err.CPLE_AppDefinedError as e : + feedback.pushWarning(f"Unable to cleaning temporary files ! Try to delete them latter at {self.output_subdir}") + self.all_encoding_done = True # Update the progress bar -- GitLab