copy log: add option to include logcat
Change-Id: I9689df4560d5209f385fbbc3e233859754b3ebbd
This commit is contained in:
committed by
captainthrowback
parent
2485980a9a
commit
529789380b
@@ -940,6 +940,11 @@ void DataManager::SetDefaultValues()
|
||||
|
||||
mData.SetValue("tw_enable_adb_backup", "0");
|
||||
|
||||
if (TWFunc::Path_Exists("/system/bin/logcat"))
|
||||
mConst.SetValue("tw_logcat_exists", "1");
|
||||
else
|
||||
mConst.SetValue("tw_logcat_exists", "0");
|
||||
|
||||
if (TWFunc::Path_Exists("/system/bin/magiskboot"))
|
||||
mConst.SetValue("tw_has_repack_tools", "1");
|
||||
else
|
||||
|
||||
@@ -676,8 +676,10 @@ int GUIAction::copylog(std::string arg __unused)
|
||||
{
|
||||
string dst, curr_storage;
|
||||
int copy_kernel_log = 0;
|
||||
int copy_logcat = 1;
|
||||
|
||||
DataManager::GetValue("tw_include_kernel_log", copy_kernel_log);
|
||||
DataManager::GetValue("tw_include_logcat", copy_logcat);
|
||||
PartitionManager.Mount_Current_Storage(true);
|
||||
curr_storage = DataManager::GetCurrentStoragePath();
|
||||
dst = curr_storage + "/recovery.log";
|
||||
@@ -685,6 +687,8 @@ int GUIAction::copylog(std::string arg __unused)
|
||||
tw_set_default_metadata(dst.c_str());
|
||||
if (copy_kernel_log)
|
||||
TWFunc::copy_kernel_log(curr_storage);
|
||||
if (copy_logcat)
|
||||
TWFunc::copy_logcat(curr_storage);
|
||||
sync();
|
||||
gui_msg(Msg("copy_log=Copied recovery log to {1}")(dst));
|
||||
} else
|
||||
|
||||
@@ -2993,7 +2993,7 @@
|
||||
<action function="set">tw_slider_text={@swipe_reboot=Swipe to Reboot}</action>
|
||||
<action function="page">rebootcheck</action>
|
||||
</actions>
|
||||
</button>
|
||||
</listitem>
|
||||
</listbox>
|
||||
|
||||
<button style="main_button">
|
||||
@@ -3616,7 +3616,14 @@
|
||||
</text>
|
||||
|
||||
<checkbox>
|
||||
<condition var1="tw_logcat_exists" var2="1"/>
|
||||
<placement x="%indent%" y="%row4_y%"/>
|
||||
<text>{@include_logcat=Include Logcat}</text>
|
||||
<data variable="tw_include_logcat" value="1"/>
|
||||
</checkbox>
|
||||
|
||||
<checkbox>
|
||||
<placement x="%indent%" y="%row6_y%"/>
|
||||
<text>{@include_kernel_log=Include Kernel Log}</text>
|
||||
<data variable="tw_include_kernel_log" value="1"/>
|
||||
</checkbox>
|
||||
|
||||
@@ -740,7 +740,9 @@
|
||||
<string name="twrp_adbbu_option">--twrp option is required to enable twrp adb backup</string>
|
||||
<string name="partition_not_found">path: {1} not found in partititon list</string>
|
||||
<string name="copy_kernel_log">Copied kernel log to {1}</string>
|
||||
<string name="copy_logcat">Copied logcat to {1}</string>
|
||||
<string name="include_kernel_log">Include Kernel Log</string>
|
||||
<string name="include_logcat">Include Logcat</string>
|
||||
<string name="sha2_chk">Use SHA2 for hashing</string>
|
||||
<string name="unable_set_boot_slot">Error changing bootloader boot slot to {1}</string>
|
||||
<string name="unmount_sys_install">Unmount System before installing a ZIP</string>
|
||||
@@ -767,7 +769,7 @@
|
||||
<string name="change_twrp_folder_on_process">Changing TWRP folder</string>
|
||||
<string name="change_twrp_folder_after_process">TWRP folder changed to</string>
|
||||
<string name="tw_folder_exists">A folder with that name already exists!</string>
|
||||
<string name="unmap_super_devices">Unmap Super Devices</strings>
|
||||
<string name="unmap_super_devices">Unmap Super Devices</string>
|
||||
<string name="unmap_super_devices_confirm">Unmap all Super Devices?</string>
|
||||
<string name="unmapping_super_devices">Unmapping Super Devices...</string>
|
||||
<string name="unmap_super_devices_complete">Unmapped all Super Devices</string>
|
||||
|
||||
@@ -3149,7 +3149,7 @@
|
||||
<action function="set">tw_slider_text={@swipe_reboot=Swipe to Reboot}</action>
|
||||
<action function="page">rebootcheck</action>
|
||||
</actions>
|
||||
</button>
|
||||
</listitem>
|
||||
</listbox>
|
||||
|
||||
<text style="text_m">
|
||||
@@ -3737,7 +3737,14 @@
|
||||
</text>
|
||||
|
||||
<checkbox>
|
||||
<condition var1="tw_logcat_exists" var2="1"/>
|
||||
<placement x="%indent%" y="%row4_y%"/>
|
||||
<text>{@include_logcat=Include Logcat}</text>
|
||||
<data variable="tw_include_logcat" value="1"/>
|
||||
</checkbox>
|
||||
|
||||
<checkbox>
|
||||
<placement x="%indent%" y="%row6_y%"/>
|
||||
<text>{@include_kernel_log=Include Kernel Log}</text>
|
||||
<data variable="tw_include_kernel_log" value="1"/>
|
||||
</checkbox>
|
||||
|
||||
@@ -266,6 +266,13 @@
|
||||
<data variable="tw_include_kernel_log" value="1"/>
|
||||
</checkbox>
|
||||
|
||||
<checkbox>
|
||||
<condition var1="tw_logcat_exists" var2="1"/>
|
||||
<placement x="%indent%" y="%row2_y%"/>
|
||||
<text>{@include_logcat=Include Logcat}</text>
|
||||
<data variable="tw_include_logcat" value="1"/>
|
||||
</checkbox>
|
||||
|
||||
<slider>
|
||||
<text>{@swipe_confirm= Confirm}</text>
|
||||
<actions>
|
||||
|
||||
@@ -1165,6 +1165,17 @@ void TWFunc::copy_kernel_log(string curr_storage) {
|
||||
tw_set_default_metadata(dmesgDst.c_str());
|
||||
}
|
||||
|
||||
void TWFunc::copy_logcat(string curr_storage) {
|
||||
std::string logcatDst = curr_storage + "/logcat.txt";
|
||||
std::string logcatCmd = "logcat -d";
|
||||
|
||||
std::string result;
|
||||
Exec_Cmd(logcatCmd, result, false);
|
||||
write_to_file(logcatDst, result);
|
||||
gui_msg(Msg("copy_logcat=Copied logcat to {1}")(logcatDst));
|
||||
tw_set_default_metadata(logcatDst.c_str());
|
||||
}
|
||||
|
||||
bool TWFunc::isNumber(string strtocheck) {
|
||||
int num = 0;
|
||||
std::istringstream iss(strtocheck);
|
||||
|
||||
@@ -108,6 +108,7 @@ public:
|
||||
static void Disable_Stock_Recovery_Replace(); // Disable stock ROMs from replacing TWRP with stock recovery
|
||||
static unsigned long long IOCTL_Get_Block_Size(const char* block_device);
|
||||
static void copy_kernel_log(string curr_storage); // Copy Kernel Log to Current Storage (PSTORE/KMSG)
|
||||
static void copy_logcat(string curr_storage); // Copy Logcat to Current Storage
|
||||
static bool isNumber(string strtocheck); // return true if number, false if not a number
|
||||
static int stream_adb_backup(string &Restore_Name); // Tell ADB Backup to Stream to TWRP from GUI selection
|
||||
static std::string get_log_dir(); // return recovery log storage directory
|
||||
|
||||
Reference in New Issue
Block a user