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

Commit 1c8d814c authored by George Burgess IV's avatar George Burgess IV
Browse files

fs_mgr: fix potential uses of nullptr

Clang's static analyzer flagged the following potential null pointer
dereferences. Looks like a transitive caller of this function has

```
if (change) *change = foo;
```

...and no nullness checks between that and these unconditional
assignments to `*change`.

> system/core/fs_mgr/fs_mgr_overlayfs.cpp:1100:13: warning: Dereference
of null pointer (loaded from variable 'change')
[clang-analyzer-core.NullDereference] >
system/core/fs_mgr/fs_mgr_overlayfs.cpp:1167:17: warning: Dereference of
null pointer (loaded from variable 'change')
[clang-analyzer-core.NullDereference]

Bug: None
Test: TreeHugger
Change-Id: I656e3b0f56b18ec3ca3d1db773feb81adf163122
parent 2abdb1eb
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1045,7 +1045,7 @@ static bool CreateDynamicScratch(std::string* scratch_device, bool* partition_ex

static bool CreateScratchOnData(std::string* scratch_device, bool* partition_exists, bool* change) {
    *partition_exists = false;
    *change = false;
    if (change) *change = false;

    auto images = IImageManager::Open("remount", 10s);
    if (!images) {
@@ -1065,7 +1065,7 @@ static bool CreateScratchOnData(std::string* scratch_device, bool* partition_exi
        return false;
    }

    *change = true;
    if (change) *change = true;

    // Note: calling RemoveDisabledImages here ensures that we do not race with
    // clean_scratch_files and accidentally try to map an image that will be