summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes Mueller <github@johannes-mueller.org>2017-07-06 08:07:55 +0200
committerRobin Gareus <robin@gareus.org>2017-07-12 16:15:03 +0200
commit13ddbfc0d779cef9a5e880177aa3ec3817bba284 (patch)
treed6ff497a58b24498852d058ba4869ca97c83defc
parentb3407f16656f2367f5972b6b31170b297bbd689b (diff)
Remove template dirs using PBD::remove_directory()
This makes sure that all state directories of the template are erased properly.
-rw-r--r--gtk2_ardour/template_dialog.cc15
1 files changed, 3 insertions, 12 deletions
diff --git a/gtk2_ardour/template_dialog.cc b/gtk2_ardour/template_dialog.cc
index d3d368c656..62666887a8 100644
--- a/gtk2_ardour/template_dialog.cc
+++ b/gtk2_ardour/template_dialog.cc
@@ -25,6 +25,7 @@
#include <gtkmm/treeiter.h>
#include "pbd/error.h"
+#include "pbd/file_utils.h"
#include "pbd/i18n.h"
#include "pbd/xml++.h"
@@ -307,18 +308,7 @@ SessionTemplateManager::delete_selected_template ()
return;
}
- const string path = it->get_value (_template_columns.path);
- const string name = it->get_value (_template_columns.name);
- const string file_path = Glib::build_filename (path, name+".template");
-
- if (g_unlink (file_path.c_str()) != 0) {
- error << string_compose(_("Could not delete template file \"%1\": %2"), file_path, strerror (errno)) << endmsg;
- return;
- }
-
- if (g_rmdir (path.c_str()) != 0) {
- error << string_compose(_("Could not delete template directory \"%1\": %2"), path, strerror (errno)) << endmsg;
- }
+ PBD::remove_directory (it->get_value (_template_columns.path));
_template_model->erase (it);
row_selection_changed ();
@@ -383,6 +373,7 @@ RouteTemplateManager::delete_selected_template ()
error << string_compose(_("Could not delete template file \"%1\": %2"), file_path, strerror (errno)) << endmsg;
return;
}
+ PBD::remove_directory (Glib::build_filename (user_route_template_directory (), it->get_value (_template_columns.name)));
_template_model->erase (it);
row_selection_changed ();