From 1c1ac44eaa6e1e2a84e5da9c95b1d9387e0be1c8 Mon Sep 17 00:00:00 2001 From: Dees_Troy Date: Thu, 17 Jan 2013 21:42:14 +0000 Subject: Save version to cache --- data.cpp | 14 ++++++++++---- partition.cpp | 3 +++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/data.cpp b/data.cpp index 75d689f0c..3c4e609d4 100644 --- a/data.cpp +++ b/data.cpp @@ -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); -- cgit v1.2.3