ThinBridge / Chronos

Chromiumベースの業務ブラウザ
Other
5 stars 3 forks source link

Try to execute remaining works only on not being active. #212

Closed HashidaTKS closed 1 week ago

HashidaTKS commented 1 week ago

Which issue(s) this PR fixes:

https://github.com/ThinBridge/Chronos/issues/204

This is a same patch as https://github.com/ThinBridge/Chronos/pull/205 for the v14.0.119.1-maintenance branch.

What this PR does / why we need it:

Try to execute remaining works only on not being active.

MessageLoopWorker posts a WM_SCHEDULE_CEF_WORK message to execute remaining works if re-entrancy is detected. If WM_SCHEDULE_CEF_WORK messages on re-entrancy are posted while message loop is active, a lot of WM_SCHEDULE_CEF_WORK messages are posted while active. As a result, executing message loop is prevented by those messages. These behavior causes a bug that Chronos hungs after displaying system dialog for printing.

This patch resolve that bug.

How to verify the fixed issue:

The steps to verify:

Regression tests