aboutsummaryrefslogtreecommitdiff
path: root/src/main.cpp
diff options
context:
space:
mode:
authorJan Sucan <jan@jansucan.com>2024-03-31 12:25:35 +0200
committerJán Sučan <jan@jansucan.com>2024-03-31 12:28:24 +0200
commit9f0e7e0cb8a3599d7b2be13f34963f7baf9158e7 (patch)
treef7fa458aeb803b110d34541a1ea0316360f7ce6e /src/main.cpp
parent2779ab6ad42359338f61df0e2ea29abcaf48d806 (diff)
Rewrite the backup and restore code in object-oriented way
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/main.cpp b/src/main.cpp
index 6b00324..01f3a69 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -37,9 +37,9 @@ main(int argc, char **argv)
if (OptionParser::isHelp(argc, argv)) {
OptionParser::printUsage();
} else if (OptionParser::isBackup(argc, argv)) {
- return backup(OptionParser::parseBackup(argc, argv));
+ backup(OptionParser::parseBackup(argc, argv));
} else if (OptionParser::isRestore(argc, argv)) {
- return restore(OptionParser::parseRestore(argc, argv));
+ restore(OptionParser::parseRestore(argc, argv));
} else {
OptionParser::printUsage();
exit(1);
@@ -48,5 +48,13 @@ main(int argc, char **argv)
OptionParser::printUsage();
std::cerr << "ERROR: " << e.what() << std::endl;
exit(1);
+ } catch (const BackupError &e) {
+ std::cerr << "ERROR: " << e.what() << std::endl;
+ exit(1);
+ } catch (const RestoreError &e) {
+ std::cerr << "ERROR: " << e.what() << std::endl;
+ exit(1);
}
+
+ exit(0);
}