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

Commit e873e1d3 authored by Jiyong Park's avatar Jiyong Park
Browse files

Null terminate the std::array given to execve

std::array<T, N> takes exactly N * sizeof(T) bytes, leaving no room for
the null terminator.

Bug: 335047945
Test: re-run the GSI test
Change-Id: Ic3aca5f409021c78a7eb965c5ed610e6a51e42cb
parent 6d6ff398
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -556,11 +556,11 @@ static bool MaybeDeriveMicrodroidVendorDiceNode(Fstab* fstab) {
        return true;
    }
    // clang-format off
    const std::array<const char*, 7> args = {
    const std::array<const char*, 8> args = {
        "/system/bin/derive_microdroid_vendor_dice_node",
                "--dice-driver", "/dev/open-dice0",
                "--microdroid-vendor-disk-image", microdroid_vendor_block_dev->data(),
                "--output", "/microdroid_resources/dice_chain.raw",
                "--output", "/microdroid_resources/dice_chain.raw", nullptr,
    };
    // clang-format-on
    // ForkExecveAndWaitForCompletion calls waitpid to wait for the fork-ed process to finish.