mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
Reduce the frequency of connection-related renderer crashes (see #3664)
- Use ResetWithReason to report intentional browser side disconnects of existing Mojo connections. Don't retry for those disconnects. - Add set_disconnect_with_reason_and_result_handler in Chromium/Mojo to expose the MojoResult code for failed connections, allowing identification of connections that are intentionally unbound on the browser side. - Optimize initial reconnect delay for known disconnect cases such as navigation-related and bfcache changes. - Remove connection timeout and increase total connection deadline by 100% to further reduce crash rates on slower machines. - Only fail fatally for main frames (not sub-frames) in cases where the connection fails or disconnects for unknown reasons. - Improve connection debug logging when running with `--enable-logging --vmodule=*frame*=1 --log-file=C:\temp\log.txt`
This commit is contained in:
@@ -86,6 +86,16 @@ std::string GetFrameDebugString(
|
||||
std::string GetFrameDebugString(
|
||||
const content::GlobalRenderFrameHostToken& global_token);
|
||||
|
||||
// Used in combination with ResetWithReason() to report mojo connection
|
||||
// disconnect reasons. |kNoReason| (0) is the default when a mojo connection
|
||||
// disconnects without a specified reason.
|
||||
enum class ResetReason : uint32_t {
|
||||
kNoReason,
|
||||
kDeleted,
|
||||
kDetached,
|
||||
kExcluded,
|
||||
};
|
||||
|
||||
} // namespace frame_util
|
||||
|
||||
#endif // CEF_LIBCEF_COMMON_FRAME_UTIL_H_
|
||||
|
Reference in New Issue
Block a user