From 1673e3d4ea240fa49e0771c19848bcbde6f85faf Mon Sep 17 00:00:00 2001 From: Ethan Yonker Date: Mon, 26 Oct 2015 21:51:58 -0500 Subject: Treat /vendor like /system for read only The vendor partition is verity checked just like system so we should treat vendor as read only same as system. Change-Id: Ida65c9f44d8610e52fcdcef0b4a50faf5c7110d2 --- gui/action.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'gui') diff --git a/gui/action.cpp b/gui/action.cpp index aafcd2ed4..86907a54f 100644 --- a/gui/action.cpp +++ b/gui/action.cpp @@ -1798,6 +1798,7 @@ int GUIAction::mountsystemtoggle(std::string arg) { int op_status = 0; bool remount_system = PartitionManager.Is_Mounted_By_Path("/system"); + bool remount_vendor = PartitionManager.Is_Mounted_By_Path("/vendor"); operation_start("Toggle System Mount"); if (!PartitionManager.UnMount_By_Path("/system", true)) { @@ -1819,6 +1820,20 @@ int GUIAction::mountsystemtoggle(std::string arg) } else { op_status = 1; // fail } + Part = PartitionManager.Find_Partition_By_Path("/vendor"); + if (Part) { + if (arg == "0") { + Part->Change_Mount_Read_Only(false); + } else { + Part->Change_Mount_Read_Only(true); + } + if (remount_vendor) { + Part->Mount(true); + } + op_status = 0; // success + } else { + op_status = 1; // fail + } } operation_end(op_status); -- cgit v1.2.3