Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 16bac851 authored by Jooyung Han's avatar Jooyung Han
Browse files

Switch aidl::nullable to std::optional

AIDL's @nullable is represented as std::optional in C++ backend.
The previous aidl::nullable was a temporary solution to avoid
merge-conflicts between rvc-dev and master branches.

Bug: 151275535
Test: m
Change-Id: I8fe5bfc1763087e7ff364b4408f862436492d1db
parent 8d2626f5
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -166,7 +166,7 @@ Status Idmap2Service::verifyIdmap(const std::string& target_apk_path,
Status Idmap2Service::createIdmap(const std::string& target_apk_path,
                                  const std::string& overlay_apk_path, int32_t fulfilled_policies,
                                  bool enforce_overlayable, int32_t user_id ATTRIBUTE_UNUSED,
                                  aidl::nullable<std::string>* _aidl_return) {
                                  std::optional<std::string>* _aidl_return) {
  assert(_aidl_return);
  SYSTRACE << "Idmap2Service::createIdmap " << target_apk_path << " " << overlay_apk_path;
  _aidl_return->reset();
@@ -214,7 +214,7 @@ Status Idmap2Service::createIdmap(const std::string& target_apk_path,
    return error("failed to write to idmap path " + idmap_path);
  }

  *_aidl_return = aidl::make_nullable<std::string>(idmap_path);
  *_aidl_return = idmap_path;
  return ok();
}

+1 −2
Original line number Diff line number Diff line
@@ -19,7 +19,6 @@

#include <android-base/unique_fd.h>
#include <binder/BinderService.h>
#include <binder/Nullable.h>

#include "android/os/BnIdmap2.h"

@@ -45,7 +44,7 @@ class Idmap2Service : public BinderService<Idmap2Service>, public BnIdmap2 {
  binder::Status createIdmap(const std::string& target_apk_path,
                             const std::string& overlay_apk_path, int32_t fulfilled_policies,
                             bool enforce_overlayable, int32_t user_id,
                             aidl::nullable<std::string>* _aidl_return) override;
                             std::optional<std::string>* _aidl_return) override;

 private:
  // Cache the crc of the android framework package since the crc cannot change without a reboot.
+1 −2
Original line number Diff line number Diff line
@@ -23,7 +23,6 @@
#include <android-base/properties.h>
#include <android-base/stringprintf.h>
#include <binder/AppOpsManager.h>
#include <binder/Nullable.h>
#include <binder/Status.h>
#include <sys/stat.h>
#include <uuid/uuid.h>
@@ -1404,7 +1403,7 @@ void IncrementalService::prepareDataLoaderLocked(IncFsMount& ifs, DataLoaderPara
    }

    FileSystemControlParcel fsControlParcel;
    fsControlParcel.incremental = aidl::make_nullable<IncrementalFileSystemControlParcel>();
    fsControlParcel.incremental = std::make_optional<IncrementalFileSystemControlParcel>();
    fsControlParcel.incremental->cmd.reset(dup(ifs.control.cmd()));
    fsControlParcel.incremental->pendingReads.reset(dup(ifs.control.pendingReads()));
    fsControlParcel.incremental->log.reset(dup(ifs.control.logs()));