summaryrefslogtreecommitdiffstats
path: root/twrp-functions.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'twrp-functions.cpp')
-rw-r--r--twrp-functions.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/twrp-functions.cpp b/twrp-functions.cpp
index 28d0ba58e..320001723 100644
--- a/twrp-functions.cpp
+++ b/twrp-functions.cpp
@@ -15,6 +15,7 @@
#include "common.h"
#include "data.hpp"
#include "bootloader.h"
+#include "variables.h"
/* Checks md5 for a path
Return values:
@@ -385,4 +386,29 @@ void TWFunc::check_and_run_script(const char* script_file, const char* display_n
system(script_file);
ui_print("\nFinished running %s script.\n", display_name);
}
+}
+
+void TWFunc::Output_Version(void) {
+ string Path, Command;
+ char version[255];
+
+ Path = DataManager::GetSettingsStoragePath();
+ if (!PartitionManager.Mount_By_Path(Path, false)) {
+ LOGI("Unable to mount '%s' to write version number.\n");
+ return;
+ }
+ Path += "/TWRP/.version";
+ if (Path_Exists(Path)) {
+ Command = "rm -f " + Path;
+ system(Command.c_str());
+ }
+ FILE *fp = fopen(Path.c_str(), "w");
+ if (fp == NULL) {
+ LOGE("Unable to open '%s'.\n", Path.c_str());
+ return;
+ }
+ strcpy(version, TW_VERSION_STR);
+ fwrite(version, sizeof(version[0]), strlen(version) / sizeof(version[0]), fp);
+ fclose(fp);
+ sync();
} \ No newline at end of file