summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYo Chiang <yochiang@google.com>2020-12-31 04:34:06 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2020-12-31 04:34:06 +0000
commit04466145017e43ec81aa51176d067b8e519c275e (patch)
tree6845b973204f4c0b13fabe464bb6338d445d0063
parent04d831331988328db2890384d0b6e715fcc4d4bf (diff)
parent8a9ba1b188634d48571742566803cdd52aa30f4b (diff)
downloadgsid-04466145017e43ec81aa51176d067b8e519c275e.tar.gz
gsi_tool: check closePartition() after installation am: f9f5dbb897 am: fce7f2636c am: 8a9ba1b188
Original change: https://android-review.googlesource.com/c/platform/system/gsid/+/1536724 MUST ONLY BE SUBMITTED BY AUTOMERGER Change-Id: Id7a1a0d75d053d02166c6ea2f27bbf091bd4edfc
-rw-r--r--gsi_tool.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/gsi_tool.cpp b/gsi_tool.cpp
index 56d6de1..c6057a2 100644
--- a/gsi_tool.cpp
+++ b/gsi_tool.cpp
@@ -278,6 +278,12 @@ static int Install(sp<IGsiService> gsid, int argc, char** argv) {
<< "\n";
return EX_SOFTWARE;
}
+ status = gsid->closePartition(&error);
+ if (!status.isOk() || error != IGsiService::INSTALL_OK) {
+ std::cerr << "Could not closePartition(userdata): " << ErrorMessage(status, error)
+ << std::endl;
+ return EX_SOFTWARE;
+ }
}
status = gsid->createPartition(partition, gsiSize, true, &error);
@@ -295,6 +301,13 @@ static int Install(sp<IGsiService> gsid, int argc, char** argv) {
return EX_SOFTWARE;
}
+ status = gsid->closePartition(&error);
+ if (!status.isOk() || error != IGsiService::INSTALL_OK) {
+ std::cerr << "Could not closePartition(" << partition
+ << "): " << ErrorMessage(status, error) << std::endl;
+ return EX_SOFTWARE;
+ }
+
status = gsid->closeInstall(&error);
if (!status.isOk() || error != IGsiService::INSTALL_OK) {
std::cerr << "Could not close DSU installation: " << ErrorMessage(status, error) << "\n";
@@ -417,6 +430,12 @@ static int CreatePartition(sp<IGsiService> gsid, int argc, char** argv) {
}
}
+ status = gsid->closePartition(&error);
+ if (!status.isOk() || error != IGsiService::INSTALL_OK) {
+ std::cerr << "Could not close DSU partition:" << ErrorMessage(status, error) << std::endl;
+ return EX_SOFTWARE;
+ }
+
status = gsid->closeInstall(&error);
if (!status.isOk() || error != IGsiService::INSTALL_OK) {
std::cerr << "Could not close DSU installation: " << ErrorMessage(status, error)