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

Commit 3b53fc5a authored by Martijn Coenen's avatar Martijn Coenen
Browse files

Only spawn one binder thread for screencap.

To work around race conditions in libbinder when
spawning new threads while being shut down.

Bug: 36066697
Test: screencap still works
Change-Id: I774d3dc2491bb578a12dede90cc7fcded976f13f
parent a22a5d83
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -84,6 +84,11 @@ static status_t notifyMediaScanner(const char* fileName) {

int main(int argc, char** argv)
{
    // setThreadPoolMaxThreadCount(0) actually tells the kernel it's
    // not allowed to spawn any additional threads, but we still spawn
    // a binder thread from userspace when we call startThreadPool().
    // See b/36066697 for rationale
    ProcessState::self()->setThreadPoolMaxThreadCount(0);
    ProcessState::self()->startThreadPool();

    const char* pname = argv[0];