@@ -107,7 +107,9 @@ def get_source(self):
107
107
# task.set_task_data("task_data", None) # Pass our custom data instance to the task
108
108
task .run_in_thread (self .clone_source_sepository )
109
109
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 )
111
113
112
114
# Clone the the source from git repository
113
115
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, _):
127
129
self .on_get_source_completed ()
128
130
129
131
# Copy source folder from local directory
130
- def copySourceFolder (self ):
132
+ def copy_source_folder (self , task , source_object , task_data , cancellable ):
131
133
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 , _ ):
133
141
self .on_get_source_completed ()
134
142
135
143
# Distribute source to
0 commit comments