partitions. Too many problems have been reported for TWRP attempting to store logs in the persist partition. Selinux denials have caused issues booting Android, and filling up persist has caused IMEI issues. This patchset will remove persist from the list of available log directories by default in order to avoid these and other possible issues. Change-Id: I29889d69f76270a8fbb764a79be3523821d8579c
89 lines
2.8 KiB
C++
Executable File
89 lines
2.8 KiB
C++
Executable File
/*
|
|
Copyright 2012 bigbiff/Dees_Troy TeamWin
|
|
This file is part of TWRP/TeamWin Recovery Project.
|
|
|
|
TWRP is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
TWRP is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with TWRP. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
#ifndef _DATAMANAGER_HPP_HEADER
|
|
#define _DATAMANAGER_HPP_HEADER
|
|
|
|
#include <string>
|
|
#include <pthread.h>
|
|
#include "infomanager.hpp"
|
|
|
|
using namespace std;
|
|
|
|
class DataManager
|
|
{
|
|
public:
|
|
static int ResetDefaults();
|
|
static int LoadValues(const string& filename);
|
|
static int LoadPersistValues(void);
|
|
static int Flush();
|
|
|
|
// Core get routines
|
|
static int GetValue(const string& varName, string& value);
|
|
static int GetValue(const string& varName, int& value);
|
|
static int GetValue(const string& varName, float& value);
|
|
static int GetValue(const string& varName, unsigned long long& value);
|
|
|
|
// Helper functions
|
|
static string GetStrValue(const string& varName);
|
|
static int GetIntValue(const string& varName);
|
|
|
|
// Core set routines
|
|
static int SetValue(const string& varName, const string& value, const int persist = 0);
|
|
static int SetValue(const string& varName, const int value, const int persist = 0);
|
|
static int SetValue(const string& varName, const float value, const int persist = 0);
|
|
static int SetValue(const string& varName, const unsigned long long& value, const int persist = 0);
|
|
static int SetProgress(const float Fraction);
|
|
static int _SetProgress(float Fraction);
|
|
static int ShowProgress(float Portion, const float Seconds);
|
|
|
|
static void DumpValues();
|
|
static void update_tz_environment_variables();
|
|
static void Vibrate(const string& varName);
|
|
static void SetBackupFolder();
|
|
static void SetDefaultValues();
|
|
static void Output_Version(void); // Outputs the version to a file in the TWRP folder
|
|
static void ReadSettingsFile(void);
|
|
|
|
static string GetCurrentStoragePath(void);
|
|
static string GetSettingsStoragePath(void);
|
|
|
|
protected:
|
|
static string mBackingFile;
|
|
static int mInitialized;
|
|
static InfoManager mPersist;
|
|
static InfoManager mData;
|
|
static InfoManager mConst;
|
|
|
|
static map<string, string> mConstValues;
|
|
|
|
protected:
|
|
static int SaveValues();
|
|
|
|
static int GetMagicValue(const string& varName, string& value);
|
|
|
|
private:
|
|
static void sanitize_device_id(char* device_id);
|
|
static void get_device_id(void);
|
|
|
|
static pthread_mutex_t m_valuesLock;
|
|
};
|
|
|
|
#endif // _DATAMANAGER_HPP_HEADER
|
|
|