CEF in single process mode with a multi-threaded message loop hangs during shutdown due to Chromium changes made by https://codereview.chromium.org/2029623002. Other scenarios may hang as well, but have not been tested.
Attached is a patch tested on 2785 to libcef/renderer/content_renderer_client.cc that fixes the hang by moving the existing call to content::RenderProcessHost::SetRunRendererInProcess(false) prior to the host cleanup loop. When set to false prior to cleanup instead of after, the quick return check during host cleanup is bypassed and the cleanup proceeds as it did prior to the aforementioned Chromium changes.
Also the changes in https://codereview.chromium.org/1942273002 need reverted because they force a crash during the cef shutdown procedure.