diff options
Diffstat (limited to '')
-rw-r--r-- | data.cpp | 14 | ||||
-rw-r--r-- | partition.cpp | 3 |
2 files changed, 13 insertions, 4 deletions
@@ -831,15 +831,21 @@ int DataManager::GetMagicValue(const string varName, string& value) } void DataManager::Output_Version(void) { - string Path, Command; + string Path; char version[255]; - Path = DataManager::GetSettingsStoragePath(); - if (!PartitionManager.Mount_By_Path(Path, false)) { + if (!PartitionManager.Mount_By_Path("/cache", false)) { LOGI("Unable to mount '%s' to write version number.\n", Path.c_str()); return; } - Path += "/TWRP/.version"; + if (!TWFunc::Path_Exists("/cache/recovery/.")) { + LOGI("Recreating /cache/recovery folder.\n"); + if (mkdir("/cache/recovery", S_IRWXU | S_IRWXG | S_IWGRP | S_IXGRP) != 0) { + LOGE("DataManager::Output_Version -- Unable to make /cache/recovery\n"); + return; + } + } + Path = "/cache/recovery/.version"; if (TWFunc::Path_Exists(Path)) { unlink(Path.c_str()); } diff --git a/partition.cpp b/partition.cpp index b611e2499..14d5e8490 100644 --- a/partition.cpp +++ b/partition.cpp @@ -832,6 +832,9 @@ bool TWPartition::Wipe(string New_File_System) { } #endif + if (Mount_Point == "/cache") + DataManager::Output_Version(); + if (TWFunc::Path_Exists("/.layout_version") && Mount(false)) TWFunc::copy_file("/.layout_version", Layout_Filename, 0600); |