Skip to content

Commit 2d651cd

Browse files
Merge pull request #11 from mylinuxforwork/10-copy-in-thread
Copy local source in thread
2 parents b429080 + 5f9ca84 commit 2d651cd

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

src/classes/information.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,9 @@ def get_source(self):
107107
# task.set_task_data("task_data", None) # Pass our custom data instance to the task
108108
task.run_in_thread(self.clone_source_sepository)
109109
else:
110-
self.copySourceFolder()
110+
task = Gio.Task.new(self, self.current_cancellable, self.on_copy_source_folder_completed, None)
111+
# task.set_task_data("task_data", None) # Pass our custom data instance to the task
112+
task.run_in_thread(self.copy_source_folder)
111113

112114
# Clone the the source from git repository
113115
def clone_source_sepository(self, task, source_object, task_data, cancellable):
@@ -127,9 +129,15 @@ def on_clone_source_sepository_completed(self, source_object, result, _):
127129
self.on_get_source_completed()
128130

129131
# Copy source folder from local directory
130-
def copySourceFolder(self):
132+
def copy_source_folder(self, task, source_object, task_data, cancellable):
131133
printLog("Copy source folder")
132-
shutil.copytree(home_folder + self.props.config_json["source"], self.props.download_folder, dirs_exist_ok=True)
134+
try:
135+
shutil.copytree(home_folder + self.props.config_json["source"], self.props.download_folder, dirs_exist_ok=True)
136+
except:
137+
self._show_error_and_reset("Source couldn't be copied successfully. Please check the source and subfolder.")
138+
139+
# Copy is completed
140+
def on_copy_source_folder_completed(self, source_object, result, _):
133141
self.on_get_source_completed()
134142

135143
# Distribute source to

0 commit comments

Comments
 (0)