Exit immediately on some linklib failures
If the library couldn't be printed to the string, installd should fail
early instead of trying to chmod() back to uninitialized stat struct.
Bug: 3121721
Change-Id: I8a3604954ae657a1e07c1ad8d5569aa80aff9e0a
diff --git a/cmds/installd/commands.c b/cmds/installd/commands.c
index a5b3e0e..2f03c7a 100644
--- a/cmds/installd/commands.c
+++ b/cmds/installd/commands.c
@@ -946,14 +946,12 @@
const size_t libdirLen = strlen(dataDir) + strlen(PKG_LIB_POSTFIX);
if (libdirLen >= PKG_PATH_MAX) {
LOGE("library dir len too large");
- rc = -1;
- goto out;
+ return -1;
}
if (snprintf(libdir, sizeof(libdir), "%s%s", dataDir, PKG_LIB_POSTFIX) != (ssize_t)libdirLen) {
LOGE("library dir not written successfully: %s\n", strerror(errno));
- rc = -1;
- goto out;
+ return -1;
}
if (stat(dataDir, &s) < 0) return -1;