From 3acbb6a350793eafd7d8258e4a8260c4d2bd7b1c Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Fri, 21 Jul 2023 11:29:15 +0600 Subject: [PATCH] Implemented repo removal action --- source/ubl-settings-repomanager.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/source/ubl-settings-repomanager.c b/source/ubl-settings-repomanager.c index eb5b8d8..eb0f629 100644 --- a/source/ubl-settings-repomanager.c +++ b/source/ubl-settings-repomanager.c @@ -115,7 +115,11 @@ void on_save(){ gboolean renamed=0; char *old_name=NULL; gtk_tree_model_get(GTK_TREE_MODEL(main_config.tree_store),&iter,1,&name_flagged,3,&origin_flagged,4,&repostatus,6,&old_name,7,&renamed,-1); - + if (repostatus==-1) { + remove_command = yon_char_unite("rm -rdf ",origin_flagged,"/",name_flagged,NULL); + system (remove_command); + gtk_tree_store_remove(main_config.tree_store,&iter); + continue; } // if (!strstr(name_flagged,".db.tar.gz")) name_flagged = yon_char_append(name_flagged,".db.tar.gz"); remove_command = yon_char_unite(command," remove -d ", origin_flagged, " -r ", name_flagged, NULL); add_command = yon_char_unite(command," add -d ", origin_flagged, " -r ", name_flagged, NULL); @@ -397,7 +401,6 @@ void yon_add_file(main_window *widgets){ gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(chooser),file_filter); int res = gtk_dialog_run(GTK_DIALOG(chooser)); if (res==GTK_RESPONSE_ACCEPT){ - char *filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(chooser)); FILE *file = popen(get_package_info_command(filename),"r"); char *cur_string=g_malloc0(sizeof(char)*4096);