diff options
Diffstat (limited to 'cmds/installd/InstalldNativeService.cpp')
| -rw-r--r-- | cmds/installd/InstalldNativeService.cpp | 15 | 
1 files changed, 13 insertions, 2 deletions
diff --git a/cmds/installd/InstalldNativeService.cpp b/cmds/installd/InstalldNativeService.cpp index a176df9789..d55a927e8d 100644 --- a/cmds/installd/InstalldNativeService.cpp +++ b/cmds/installd/InstalldNativeService.cpp @@ -307,6 +307,8 @@ status_t InstalldNativeService::dump(int fd, const Vector<String16> & /* args */          }      } +    out << "is_dexopt_blocked:" << android::installd::is_dexopt_blocked() << endl; +      out << endl;      out.flush(); @@ -2399,7 +2401,8 @@ binder::Status InstalldNativeService::dexopt(const std::string& apkPath, int32_t          const std::optional<std::string>& seInfo, bool downgrade, int32_t targetSdkVersion,          const std::optional<std::string>& profileName,          const std::optional<std::string>& dexMetadataPath, -        const std::optional<std::string>& compilationReason) { +        const std::optional<std::string>& compilationReason, +        bool* aidl_return) {      ENFORCE_UID(AID_SYSTEM);      CHECK_ARGUMENT_UUID(uuid);      CHECK_ARGUMENT_PATH(apkPath); @@ -2427,12 +2430,20 @@ binder::Status InstalldNativeService::dexopt(const std::string& apkPath, int32_t      const char* dm_path = getCStr(dexMetadataPath);      const char* compilation_reason = getCStr(compilationReason);      std::string error_msg; +    bool completed = false; // not necessary but for compiler      int res = android::installd::dexopt(apk_path, uid, pkgname, instruction_set, dexoptNeeded,              oat_dir, dexFlags, compiler_filter, volume_uuid, class_loader_context, se_info, -            downgrade, targetSdkVersion, profile_name, dm_path, compilation_reason, &error_msg); +            downgrade, targetSdkVersion, profile_name, dm_path, compilation_reason, &error_msg, +            &completed); +    *aidl_return = completed;      return res ? error(res, error_msg) : ok();  } +binder::Status InstalldNativeService::controlDexOptBlocking(bool block) { +    android::installd::control_dexopt_blocking(block); +    return ok(); +} +  binder::Status InstalldNativeService::compileLayouts(const std::string& apkPath,                                                       const std::string& packageName,                                                       const std ::string& outDexFile, int uid,  |