From 21abb82c76c280612eaf86db2d216d9b0f79de56 Mon Sep 17 00:00:00 2001 From: EntireTwix Date: Thu, 15 Jul 2021 01:02:34 -0700 Subject: [PATCH] :zap: cleaner solution to initial save file generation --- docs/building.md | 1 + main.cpp | 17 ++++++++++++++++- src/bank.cpp | 6 +----- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/docs/building.md b/docs/building.md index a39588c..e90f9da 100644 --- a/docs/building.md +++ b/docs/building.md @@ -82,6 +82,7 @@ lastly type in ``` cmake .. make -j +./bank ``` ## Certs diff --git a/main.cpp b/main.cpp index ee2fd7f..6fe3cc6 100644 --- a/main.cpp +++ b/main.cpp @@ -29,7 +29,22 @@ void SaveSig(int s) int main(int argc, char **argv) { { - + if (argc == 1) + { + std::ofstream users_save(users_location, std::ios::out | std::ios::binary); + if (users_save.is_open()) + { + uint8_t temp[16]{16, 0, 0, 0, 4}; + users_save.write((char *)temp, 16); + users_save.close(); + std::cout << "User save file generated\nUsage: sudo ./bank \n"; + } + else + { + std::cerr << "File cannot be created\n"; + } + return 0; + } if (argc != 3) { std::cerr << "Usage: sudo ./bank \n"; diff --git a/src/bank.cpp b/src/bank.cpp index c838646..f201c67 100644 --- a/src/bank.cpp +++ b/src/bank.cpp @@ -341,11 +341,7 @@ void Bank::Load() std::ifstream users_load(users_location, std::ios::out | std::ios::binary); if (!users_load.is_open()) { - std::ofstream users_save(users_location, std::ios::out | std::ios::binary); - uint8_t temp[16]{16, 0, 0, 0, 4}; - users_save.write((char *)temp, 16); - users_save.close(); - throw std::invalid_argument("Cannot find users.dat, file has been created\n"); + throw std::invalid_argument("Cannot find save file, to generate a new one run ./bank\n"); } uint32_t buffer_size;