Re: [screen-wake-lock] "Release a wake lock": should we queue a task to fire the "release" event? (#293)

> Yeah, though you want to audit all callers, e.g., `release()` will need to queue a task from its "in parallel" section (although is all it does there queue a task or would it also do some kind of permission check?).

Correct, `release()` basically just calls the "release a wake lock" algorithm. Other callers include the handlers for losing document visibility or document full activity. It's not totally clear to me what to look for in this audit though -- if I need to queue a task in those handlers, doesn't it mean running into the same kind of issue described in this bug?

> It would have to anyway as "release a wake lock" tries to access all kinds of state not typically available "in parallel".

Can you elaborate on why state isn't available in the "in parallel" blocks? I thought the algorithm would have access to `WakeLockSentinel`'s entire state since it's passed as an argument, regardless of whether it is running "in parallel" or not.

-- 
GitHub Notification of comment by rakuco
Please view or discuss this issue at https://github.com/w3c/screen-wake-lock/issues/293#issuecomment-770969510 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Monday, 1 February 2021 16:10:18 UTC