Save version number to storage
diff --git a/twrp-functions.cpp b/twrp-functions.cpp
index 28d0ba5..3200017 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 @@
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