diff --git a/cli/onionshare_cli/web/share_mode.py b/cli/onionshare_cli/web/share_mode.py index c5007d7f..95aec1ba 100644 --- a/cli/onionshare_cli/web/share_mode.py +++ b/cli/onionshare_cli/web/share_mode.py @@ -525,6 +525,7 @@ class ShareModeWeb(SendBaseModeWeb): # Make sure the zip file gets cleaned up when onionshare stops self.web.cleanup_filenames.append(self.zip_writer.zip_filename) + self.web.cleanup_filenames.append(self.zip_writer.zip_temp_dir) self.is_zipped = True @@ -545,8 +546,9 @@ class ZipWriter(object): if zip_filename: self.zip_filename = zip_filename else: + self.zip_temp_dir = tempfile.mkdtemp() self.zip_filename = ( - f"{tempfile.mkdtemp()}/onionshare_{self.common.random_string(4, 6)}.zip" + f"{self.zip_temp_dir}/onionshare_{self.common.random_string(4, 6)}.zip" ) self.z = zipfile.ZipFile(self.zip_filename, "w", allowZip64=True) diff --git a/desktop/src/onionshare/tab/mode/share_mode/threads.py b/desktop/src/onionshare/tab/mode/share_mode/threads.py index 5be94e88..839d30ea 100644 --- a/desktop/src/onionshare/tab/mode/share_mode/threads.py +++ b/desktop/src/onionshare/tab/mode/share_mode/threads.py @@ -47,9 +47,6 @@ class CompressThread(QtCore.QThread): self.mode.filenames, processed_size_callback=self.set_processed_size ) self.success.emit() - self.mode.web.cleanup_filenames += ( - self.mode.web.share_mode.cleanup_filenames - ) except OSError as e: self.error.emit(e.strerror)