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

Commit fb08b015 authored by Tianjie Xu's avatar Tianjie Xu
Browse files

Address the warnings in recovery code

The following warnngs generate when compile with WITH_TIDY=1

.../bootable/recovery/applypatch/imgdiff.cpp:968:7: warning: 'src_ranges' used after it was moved [bugprone-use-after-move]
      src_ranges.Clear();
      ^
.../bootable/recovery/applypatch/imgdiff.cpp:966:27: note: move occurred here
        split_src_ranges->push_back(std::move(src_ranges));

The logic itself seems correct since the class is meant to be cleared
after move. I feel the std::move in 966 is actually useful to call the
move constructor in RangeSet. So I just modify L968 to suppress the
warning.

Less important ones:
bootable/recovery/applypatch/applypatch_modes.cpp:79:34: warning: passing result of std::move() as a const reference argument; no move will actually happen [performance-move-const-arg]
bootable/recovery/applypatch/imgdiff.cpp:1038:30: warning: passing result of std::move() as a const reference argument; no move will actually happen [performance-move-const-arg]
bootable/recovery/applypatch/imgdiff.cpp:1054:48: warning: passing result of std::move() as a const reference argument; no move will actually happen [performance-move-const-arg]
bootable/recovery/updater/include/private/commands.h:310:16: warning: std::move of the variable 'patch' of the trivially-copyable type 'PatchInfo' has no effect; remove std::move() [performance-move-const-arg]
bootable/recovery/updater/install.cpp:663:43: warning: passing result of std::move() as a const reference argument; no move will actually happen [performance-move-const-arg]

Bug: 150955971
Test: build
Change-Id: Ieb75f0229c47d470d4f5ac93fab39c5698d3f914
parent 917b6669
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -965,7 +965,7 @@ bool ZipModeImage::SplitZipModeImageWithLimit(const ZipModeImage& tgt_image,
        used_src_ranges.Insert(src_ranges);
        split_src_ranges->push_back(std::move(src_ranges));
      }
      src_ranges.Clear();
      src_ranges = {};

      // We don't have enough space for the current chunk; start a new split image and handle
      // this chunk there.
@@ -1035,7 +1035,7 @@ bool ZipModeImage::AddSplitImageFromChunkList(const ZipModeImage& tgt_image,
  }

  ZipModeImage split_tgt_image(false);
  split_tgt_image.Initialize(std::move(aligned_tgt_chunks), {});
  split_tgt_image.Initialize(aligned_tgt_chunks, {});
  split_tgt_image.MergeAdjacentNormalChunks();

  // Construct the dummy source file based on the src_ranges.
@@ -1051,7 +1051,7 @@ bool ZipModeImage::AddSplitImageFromChunkList(const ZipModeImage& tgt_image,
  CHECK(!src_content.empty());

  ZipModeImage split_src_image(true);
  split_src_image.Initialize(split_src_chunks, std::move(src_content));
  split_src_image.Initialize(split_src_chunks, src_content);

  split_tgt_images->push_back(std::move(split_tgt_image));
  split_src_images->push_back(std::move(split_src_image));
+1 −1
Original line number Diff line number Diff line
@@ -60,7 +60,7 @@ struct Value {
    BLOB = 2,
  };

  Value(Type type, const std::string& str) : type(type), data(str) {}
  Value(Type type, std::string str) : type(type), data(std::move(str)) {}

  Type type;
  std::string data;
+1 −1
Original line number Diff line number Diff line
@@ -307,7 +307,7 @@ class Command {
      : type_(type),
        index_(index),
        cmdline_(std::move(cmdline)),
        patch_(std::move(patch)),
        patch_(patch),
        target_(std::move(target)),
        source_(std::move(source)),
        stash_(std::move(stash)) {}