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

Commit 89358fea authored by Muhammad Qureshi's avatar Muhammad Qureshi
Browse files

Fix testMultipleConditions flake

Use vector<int> instead of vector<bool>.
vector<bool> is not thread-safe:
https://en.cppreference.com/w/cpp/container#Thread_safety

Fixes: 156690351
Test: atest --iterations=500
statsd_test:MultiConditionTrigger#TestMultipleConditions

Change-Id: I9121747ffbee0864afbff993e7fe417104827952
parent a7642cd3
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -50,13 +50,13 @@ TEST(MultiConditionTrigger, TestMultipleConditions) {
    });

    vector<thread> threads;
    vector<bool> done(numConditions, false);
    vector<int> done(numConditions, 0);

    int i = 0;
    for (const string& conditionName : conditionNames) {
        threads.emplace_back([&done, &conditionName, &trigger, i] {
            sleep_for(chrono::milliseconds(3));
            done[i] = true;
            done[i] = 1;
            trigger.markComplete(conditionName);
        });
        i++;