diff --git a/BUILD.gn b/BUILD.gn index c6e7a2252..b1b57fc06 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -277,6 +277,7 @@ source_set("webkit_set") { deps = [ "//skia", "//third_party/icu", + "//third_party/boringssl", "//v8", ] } @@ -704,6 +705,7 @@ static_library("libcef_static") { "//components/keyed_service/content:content", "//components/keyed_service/core:core", "//components/navigation_interception", + "//components/network_session_configurator/common", "//components/pdf/browser", "//components/pdf/renderer", "//components/plugins/renderer", @@ -723,7 +725,7 @@ static_library("libcef_static") { "//components/visitedlink/browser", "//components/visitedlink/common", "//components/visitedlink/renderer", - "//components/viz/display_compositor", + "//components/viz/service", "//components/web_cache/renderer", "//content/public/app:both", "//content/public/browser", @@ -842,7 +844,7 @@ static_library("libcef_static") { deps += [ "//build/config/freetype", - "//build/linux:fontconfig", + "//third_party/fontconfig", ] } @@ -957,6 +959,7 @@ static_library("libcef_static") { "//ui/events", "//ui/strings", "//ui/wm", + "//ui/wm/public", ] if (toolkit_views) { diff --git a/CHROMIUM_BUILD_COMPATIBILITY.txt b/CHROMIUM_BUILD_COMPATIBILITY.txt index f9bf51879..80bdfdc7b 100644 --- a/CHROMIUM_BUILD_COMPATIBILITY.txt +++ b/CHROMIUM_BUILD_COMPATIBILITY.txt @@ -7,5 +7,5 @@ # https://bitbucket.org/chromiumembedded/cef/wiki/BranchesAndBuilding { - 'chromium_checkout': 'd483fb7716e28b377c70c26c1bf1e3695aa1d8c9', + 'chromium_checkout': 'ff259bab28b35d242e10186cd63af7ed404fae0d', } diff --git a/include/base/cef_atomic_ref_count.h b/include/base/cef_atomic_ref_count.h index 755f8a8fb..4d6777970 100644 --- a/include/base/cef_atomic_ref_count.h +++ b/include/base/cef_atomic_ref_count.h @@ -39,14 +39,49 @@ #define CEF_INCLUDE_BASE_CEF_ATOMIC_REF_COUNT_H_ #pragma once -#if defined(BASE_ATOMIC_REF_COUNT_H_) -// Do nothing if the Chromium header has already been included. -// This can happen in cases where Chromium code is used directly by the -// client application. When using Chromium code directly always include -// the Chromium header first to avoid type conflicts. -#elif defined(USING_CHROMIUM_INCLUDES) +#if defined(USING_CHROMIUM_INCLUDES) // When building CEF include the Chromium header directly. #include "base/atomic_ref_count.h" + +// Used when declaring a base::AtomicRefCount value. This is an object type with +// Chromium headers. +#define ATOMIC_DECLARATION (0) + +// Maintaining compatibility with AtompicRefCount* functions that were removed +// from Chromium in http://crrev.com/ee96d561. +namespace base { + +// Increment a reference count by 1. +inline void AtomicRefCountInc(volatile AtomicRefCount* ptr) { + const_cast(ptr)->Increment(); +} + +// Decrement a reference count by 1 and return whether the result is non-zero. +// Insert barriers to ensure that state written before the reference count +// became zero will be visible to a thread that has just made the count zero. +inline bool AtomicRefCountDec(volatile AtomicRefCount* ptr) { + return const_cast(ptr)->Decrement(); +} + +// Return whether the reference count is one. If the reference count is used +// in the conventional way, a refrerence count of 1 implies that the current +// thread owns the reference and no other thread shares it. This call performs +// the test for a reference count of one, and performs the memory barrier +// needed for the owning thread to act on the object, knowing that it has +// exclusive access to the object. +inline bool AtomicRefCountIsOne(volatile AtomicRefCount* ptr) { + return const_cast(ptr)->IsOne(); +} + +// Return whether the reference count is zero. With conventional object +// referencing counting, the object will be destroyed, so the reference count +// should never be zero. Hence this is generally used for a debug check. +inline bool AtomicRefCountIsZero(volatile AtomicRefCount* ptr) { + return const_cast(ptr)->IsZero(); +} + +} // namespace base + #else // !USING_CHROMIUM_INCLUDES // The following is substantially similar to the Chromium implementation. // If the Chromium implementation diverges the below implementation should be @@ -58,6 +93,10 @@ #define ANNOTATE_HAPPENS_BEFORE(obj) /* empty */ #define ANNOTATE_HAPPENS_AFTER(obj) /* empty */ +// Used when declaring a base::AtomicRefCount value. This is an integer/ptr type +// with CEF headers. +#define ATOMIC_DECLARATION = 0 + namespace base { typedef subtle::Atomic32 AtomicRefCount; diff --git a/include/internal/cef_types.h b/include/internal/cef_types.h index 4800304c8..45c74648b 100644 --- a/include/internal/cef_types.h +++ b/include/internal/cef_types.h @@ -1916,12 +1916,7 @@ typedef struct _cef_popup_features_t { int menuBarVisible; int statusBarVisible; int toolBarVisible; - int locationBarVisible; int scrollbarsVisible; - int resizable; - - int fullscreen; - int dialog; } cef_popup_features_t; /// @@ -2463,42 +2458,61 @@ typedef enum { // Policy for how the Referrer HTTP header value will be sent during navigation. // If the `--no-referrers` command-line flag is specified then the policy value // will be ignored and the Referrer value will never be sent. +// Must be kept synchronized with net::URLRequest::ReferrerPolicy from Chromium. /// typedef enum { /// - // Always send the complete Referrer value. + // Clear the referrer header if the header value is HTTPS but the request + // destination is HTTP. This is the default behavior. /// - REFERRER_POLICY_ALWAYS, + REFERRER_POLICY_CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE, + REFERRER_POLICY_DEFAULT = + REFERRER_POLICY_CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE, /// - // Use the default policy. This is REFERRER_POLICY_ORIGIN_WHEN_CROSS_ORIGIN - // when the `--reduced-referrer-granularity` command-line flag is specified - // and REFERRER_POLICY_NO_REFERRER_WHEN_DOWNGRADE otherwise. - // + // A slight variant on CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE: + // If the request destination is HTTP, an HTTPS referrer will be cleared. If + // the request's destination is cross-origin with the referrer (but does not + // downgrade), the referrer's granularity will be stripped down to an origin + // rather than a full URL. Same-origin requests will send the full referrer. /// - REFERRER_POLICY_DEFAULT, + REFERRER_POLICY_REDUCE_REFERRER_GRANULARITY_ON_TRANSITION_CROSS_ORIGIN, /// - // When navigating from HTTPS to HTTP do not send the Referrer value. - // Otherwise, send the complete Referrer value. + // Strip the referrer down to an origin when the origin of the referrer is + // different from the destination's origin. /// - REFERRER_POLICY_NO_REFERRER_WHEN_DOWNGRADE, + REFERRER_POLICY_ORIGIN_ONLY_ON_TRANSITION_CROSS_ORIGIN, /// - // Never send the Referrer value. + // Never change the referrer. /// - REFERRER_POLICY_NEVER, + REFERRER_POLICY_NEVER_CLEAR_REFERRER, /// - // Only send the origin component of the Referrer value. + // Strip the referrer down to the origin regardless of the redirect location. /// REFERRER_POLICY_ORIGIN, /// - // When navigating cross-origin only send the origin component of the Referrer - // value. Otherwise, send the complete Referrer value. + // Clear the referrer when the request's referrer is cross-origin with the + // request's destination. /// - REFERRER_POLICY_ORIGIN_WHEN_CROSS_ORIGIN, + REFERRER_POLICY_CLEAR_REFERRER_ON_TRANSITION_CROSS_ORIGIN, + + /// + // Strip the referrer down to the origin, but clear it entirely if the + // referrer value is HTTPS and the destination is HTTP. + /// + REFERRER_POLICY_ORIGIN_CLEAR_ON_TRANSITION_FROM_SECURE_TO_INSECURE, + + /// + // Always clear the referrer regardless of the request destination. + /// + REFERRER_POLICY_NO_REFERRER, + + // Always the last value in this enumeration. + REFERRER_POLICY_LAST_VALUE, } cef_referrer_policy_t; /// diff --git a/include/internal/cef_types_wrappers.h b/include/internal/cef_types_wrappers.h index d7f9454cc..091c8e980 100644 --- a/include/internal/cef_types_wrappers.h +++ b/include/internal/cef_types_wrappers.h @@ -488,9 +488,7 @@ struct CefPopupFeaturesTraits { s->menuBarVisible = true; s->statusBarVisible = true; s->toolBarVisible = true; - s->locationBarVisible = true; s->scrollbarsVisible = true; - s->resizable = true; } static inline void clear(struct_type* s) {} @@ -509,11 +507,7 @@ struct CefPopupFeaturesTraits { target->menuBarVisible = src->menuBarVisible; target->statusBarVisible = src->statusBarVisible; target->toolBarVisible = src->toolBarVisible; - target->locationBarVisible = src->locationBarVisible; target->scrollbarsVisible = src->scrollbarsVisible; - target->resizable = src->resizable; - target->fullscreen = src->fullscreen; - target->dialog = src->dialog; } }; diff --git a/libcef/browser/browser_context_impl.cc b/libcef/browser/browser_context_impl.cc index 5c9f67ab9..4bc4a9c8e 100644 --- a/libcef/browser/browser_context_impl.cc +++ b/libcef/browser/browser_context_impl.cc @@ -427,6 +427,11 @@ CefBrowserContextImpl::GetBackgroundSyncController() { return nullptr; } +content::BrowsingDataRemoverDelegate* +CefBrowserContextImpl::GetBrowsingDataRemoverDelegate() { + return nullptr; +} + net::URLRequestContextGetter* CefBrowserContextImpl::CreateRequestContext( content::ProtocolHandlerMap* protocol_handlers, content::URLRequestInterceptorScopedVector request_interceptors) { @@ -453,7 +458,6 @@ net::URLRequestContextGetter* CefBrowserContextImpl::CreateRequestContext( url_request_getter_ = new CefURLRequestContextGetterImpl( settings_, GetPrefs(), BrowserThread::GetTaskRunnerForThread(BrowserThread::IO), - BrowserThread::GetTaskRunnerForThread(BrowserThread::FILE), protocol_handlers, std::move(proxy_config_service), std::move(request_interceptors)); resource_context()->set_url_request_context_getter(url_request_getter_.get()); diff --git a/libcef/browser/browser_context_impl.h b/libcef/browser/browser_context_impl.h index 06f47624e..f50be0d80 100644 --- a/libcef/browser/browser_context_impl.h +++ b/libcef/browser/browser_context_impl.h @@ -69,6 +69,8 @@ class CefBrowserContextImpl : public CefBrowserContext, content::SSLHostStateDelegate* GetSSLHostStateDelegate() override; content::PermissionManager* GetPermissionManager() override; content::BackgroundSyncController* GetBackgroundSyncController() override; + content::BrowsingDataRemoverDelegate* GetBrowsingDataRemoverDelegate() + override; net::URLRequestContextGetter* CreateRequestContext( content::ProtocolHandlerMap* protocol_handlers, content::URLRequestInterceptorScopedVector request_interceptors) override; diff --git a/libcef/browser/browser_context_proxy.cc b/libcef/browser/browser_context_proxy.cc index 71f0eb3d4..a17f047d3 100644 --- a/libcef/browser/browser_context_proxy.cc +++ b/libcef/browser/browser_context_proxy.cc @@ -161,6 +161,11 @@ CefBrowserContextProxy::GetBackgroundSyncController() { return parent_->GetBackgroundSyncController(); } +content::BrowsingDataRemoverDelegate* +CefBrowserContextProxy::GetBrowsingDataRemoverDelegate() { + return parent_->GetBrowsingDataRemoverDelegate(); +} + net::URLRequestContextGetter* CefBrowserContextProxy::CreateRequestContext( content::ProtocolHandlerMap* protocol_handlers, content::URLRequestInterceptorScopedVector request_interceptors) { diff --git a/libcef/browser/browser_context_proxy.h b/libcef/browser/browser_context_proxy.h index 3f238d374..95b9e5c08 100644 --- a/libcef/browser/browser_context_proxy.h +++ b/libcef/browser/browser_context_proxy.h @@ -44,6 +44,8 @@ class CefBrowserContextProxy : public CefBrowserContext { content::SSLHostStateDelegate* GetSSLHostStateDelegate() override; content::PermissionManager* GetPermissionManager() override; content::BackgroundSyncController* GetBackgroundSyncController() override; + content::BrowsingDataRemoverDelegate* GetBrowsingDataRemoverDelegate() + override; net::URLRequestContextGetter* CreateRequestContext( content::ProtocolHandlerMap* protocol_handlers, content::URLRequestInterceptorScopedVector request_interceptors) override; diff --git a/libcef/browser/browser_host_impl.cc b/libcef/browser/browser_host_impl.cc index 154a7fd72..6e279fd4a 100644 --- a/libcef/browser/browser_host_impl.cc +++ b/libcef/browser/browser_host_impl.cc @@ -65,6 +65,7 @@ #include "content/public/browser/render_view_host.h" #include "content/public/browser/render_widget_host.h" #include "content/public/browser/resource_request_info.h" +#include "content/public/common/favicon_url.h" #include "net/base/net_errors.h" #include "third_party/WebKit/public/web/WebFindOptions.h" #include "ui/events/base_event_utils.h" @@ -700,7 +701,7 @@ void CefBrowserHostImpl::StartDownload(const CefString& url) { std::unique_ptr params( content::DownloadUrlParameters::CreateForWebContentsMainFrame( - web_contents(), gurl)); + web_contents(), gurl, NO_TRAFFIC_ANNOTATION_YET)); manager->DownloadUrl(std::move(params)); } @@ -1526,7 +1527,9 @@ void CefBrowserHostImpl::Navigate(const CefNavigateParams& params) { request.method = params.method; request.referrer = params.referrer.url; - request.referrer_policy = params.referrer.policy; + request.referrer_policy = + CefRequestImpl::BlinkReferrerPolicyToNetReferrerPolicy( + params.referrer.policy); request.frame_id = params.frame_id; request.first_party_for_cookies = params.first_party_for_cookies; request.headers = params.headers; @@ -2305,8 +2308,7 @@ void CefBrowserHostImpl::WebContentsCreated( int opener_render_frame_id, const std::string& frame_name, const GURL& target_url, - content::WebContents* new_contents, - const base::Optional& create_params) { + content::WebContents* new_contents) { CefBrowserSettings settings; CefRefPtr client; std::unique_ptr platform_delegate; @@ -2673,7 +2675,7 @@ void CefBrowserHostImpl::DidUpdateFaviconURL( std::vector icon_urls; std::vector::const_iterator it = candidates.begin(); for (; it != candidates.end(); ++it) { - if (it->icon_type == content::FaviconURL::FAVICON) + if (it->icon_type == content::FaviconURL::IconType::kFavicon) icon_urls.push_back(it->icon_url.spec()); } if (!icon_urls.empty()) @@ -2736,7 +2738,8 @@ void CefBrowserHostImpl::AccessibilityLocationChangesReceived( } } -void CefBrowserHostImpl::OnWebContentsFocused() { +void CefBrowserHostImpl::OnWebContentsFocused( + content::RenderWidgetHost* render_widget_host) { if (client_.get()) { CefRefPtr handler = client_->GetFocusHandler(); if (handler.get()) diff --git a/libcef/browser/browser_host_impl.h b/libcef/browser/browser_host_impl.h index fa9f82d82..78912ca1f 100644 --- a/libcef/browser/browser_host_impl.h +++ b/libcef/browser/browser_host_impl.h @@ -35,7 +35,7 @@ namespace content { struct DragEventSourceInfo; class RenderWidgetHostImpl; -} +} // namespace content namespace net { class URLRequest; @@ -412,15 +412,12 @@ class CefBrowserHostImpl : public CefBrowserHost, int opener_render_frame_id, content::WebContentsView** view, content::RenderViewHostDelegateView** delegate_view) override; - void WebContentsCreated( - content::WebContents* source_contents, - int opener_render_process_id, - int opener_render_frame_id, - const std::string& frame_name, - const GURL& target_url, - content::WebContents* new_contents, - const base::Optional& create_params) - override; + void WebContentsCreated(content::WebContents* source_contents, + int opener_render_process_id, + int opener_render_frame_id, + const std::string& frame_name, + const GURL& target_url, + content::WebContents* new_contents) override; void DidNavigateMainFramePostCommit( content::WebContents* web_contents) override; content::JavaScriptDialogManager* GetJavaScriptDialogManager( @@ -484,7 +481,8 @@ class CefBrowserHostImpl : public CefBrowserHost, const std::vector& locData) override; - void OnWebContentsFocused() override; + void OnWebContentsFocused( + content::RenderWidgetHost* render_widget_host) override; // Override to provide a thread safe implementation. bool Send(IPC::Message* message) override; diff --git a/libcef/browser/browser_info_manager.cc b/libcef/browser/browser_info_manager.cc index fac5ae094..70530ee9b 100644 --- a/libcef/browser/browser_info_manager.cc +++ b/libcef/browser/browser_info_manager.cc @@ -37,12 +37,7 @@ void TranslatePopupFeatures(const blink::mojom::WindowFeatures& webKitFeatures, features.menuBarVisible = webKitFeatures.menu_bar_visible; features.statusBarVisible = webKitFeatures.status_bar_visible; features.toolBarVisible = webKitFeatures.tool_bar_visible; - features.locationBarVisible = webKitFeatures.location_bar_visible; features.scrollbarsVisible = webKitFeatures.scrollbars_visible; - features.resizable = webKitFeatures.resizable; - - features.fullscreen = webKitFeatures.fullscreen; - features.dialog = webKitFeatures.dialog; } CefBrowserInfoManager* g_info_manager = nullptr; @@ -112,11 +107,11 @@ scoped_refptr CefBrowserInfoManager::CreatePopupBrowserInfo( PendingNewBrowserInfoList::iterator it = pending_new_browser_info_list_.begin(); for (; it != pending_new_browser_info_list_.end(); ++it) { - PendingNewBrowserInfo* info = *it; + PendingNewBrowserInfo* info = it->get(); if (info->render_process_id == render_process_id && info->render_view_routing_id == render_view_routing_id && info->render_frame_routing_id == render_frame_routing_id) { - SendNewBrowserInfoResponse(render_process_id, browser_info.get(), false, + SendNewBrowserInfoResponse(render_process_id, browser_info, false, info->reply_msg); pending_new_browser_info_list_.erase(it); @@ -304,8 +299,8 @@ void CefBrowserInfoManager::OnGetNewBrowserInfo(int render_process_id, if (browser_info.get()) { // Send the response immediately. - SendNewBrowserInfoResponse(render_process_id, browser_info.get(), - is_guest_view, reply_msg); + SendNewBrowserInfoResponse(render_process_id, browser_info, is_guest_view, + reply_msg); return; } @@ -315,7 +310,7 @@ void CefBrowserInfoManager::OnGetNewBrowserInfo(int render_process_id, PendingNewBrowserInfoList::const_iterator it = pending_new_browser_info_list_.begin(); for (; it != pending_new_browser_info_list_.end(); ++it) { - PendingNewBrowserInfo* info = *it; + PendingNewBrowserInfo* info = it->get(); if (info->render_process_id == render_process_id && info->render_view_routing_id == render_view_routing_id && info->render_frame_routing_id == render_frame_routing_id) { @@ -416,7 +411,7 @@ void CefBrowserInfoManager::RenderProcessHostDestroyed( PendingNewBrowserInfoList::iterator it = pending_new_browser_info_list_.begin(); while (it != pending_new_browser_info_list_.end()) { - PendingNewBrowserInfo* info = *it; + PendingNewBrowserInfo* info = it->get(); if (info->render_process_id == render_process_id) it = pending_new_browser_info_list_.erase(it); else @@ -428,7 +423,7 @@ void CefBrowserInfoManager::RenderProcessHostDestroyed( { PendingPopupList::iterator it = pending_popup_list_.begin(); while (it != pending_popup_list_.end()) { - PendingPopup* popup = *it; + PendingPopup* popup = it->get(); if (popup->opener_process_id == render_process_id) { it = pending_popup_list_.erase(it); } else { @@ -455,11 +450,13 @@ CefBrowserInfoManager::PopPendingPopup(PendingPopup::Step step, PendingPopupList::iterator it = pending_popup_list_.begin(); for (; it != pending_popup_list_.end(); ++it) { - PendingPopup* popup = *it; + PendingPopup* popup = it->get(); if (popup->step == step && popup->opener_process_id == opener_process_id && popup->opener_frame_id == opener_frame_id && popup->target_url == target_url) { - pending_popup_list_.weak_erase(it); + // Transfer ownership of the pointer. + it->release(); + pending_popup_list_.erase(it); return base::WrapUnique(popup); } } @@ -525,7 +522,7 @@ scoped_refptr CefBrowserInfoManager::GetBrowserInfo( // static void CefBrowserInfoManager::SendNewBrowserInfoResponse( int render_process_id, - CefBrowserInfo* browser_info, + scoped_refptr browser_info, bool is_guest_view, IPC::Message* reply_msg) { if (!CEF_CURRENTLY_ON_UIT()) { diff --git a/libcef/browser/browser_info_manager.h b/libcef/browser/browser_info_manager.h index 545c98a19..15a9ffc8f 100644 --- a/libcef/browser/browser_info_manager.h +++ b/libcef/browser/browser_info_manager.h @@ -9,10 +9,11 @@ #include "include/cef_client.h" #include +#include +#include #include "libcef/browser/browser_info.h" -#include "base/memory/scoped_vector.h" #include "base/synchronization/lock.h" #include "content/public/browser/render_process_host_observer.h" #include "third_party/WebKit/public/web/window_features.mojom.h" @@ -29,7 +30,7 @@ class RenderFrameHost; class RenderViewHostDelegateView; class WebContents; class WebContentsView; -} +} // namespace content namespace IPC { class Message; @@ -184,10 +185,11 @@ class CefBrowserInfoManager : public content::RenderProcessHostObserver { bool* is_guest_view); // Send the response for a pending OnGetNewBrowserInfo request. - static void SendNewBrowserInfoResponse(int render_process_id, - CefBrowserInfo* browser_info, - bool is_guest_view, - IPC::Message* reply_msg); + static void SendNewBrowserInfoResponse( + int render_process_id, + scoped_refptr browser_info, + bool is_guest_view, + IPC::Message* reply_msg); // Pending request for OnGetNewBrowserInfo. struct PendingNewBrowserInfo { @@ -204,11 +206,12 @@ class CefBrowserInfoManager : public content::RenderProcessHostObserver { BrowserInfoList browser_info_list_; int next_browser_id_; - typedef ScopedVector PendingNewBrowserInfoList; + using PendingNewBrowserInfoList = + std::vector>; PendingNewBrowserInfoList pending_new_browser_info_list_; // Only accessed on the UI thread. - typedef ScopedVector PendingPopupList; + using PendingPopupList = std::vector>; PendingPopupList pending_popup_list_; DISALLOW_COPY_AND_ASSIGN(CefBrowserInfoManager); diff --git a/libcef/browser/browser_main.h b/libcef/browser/browser_main.h index daaabbaef..af9e865c9 100644 --- a/libcef/browser/browser_main.h +++ b/libcef/browser/browser_main.h @@ -10,7 +10,6 @@ #include "libcef/browser/request_context_impl.h" #include "base/macros.h" -#include "base/memory/scoped_vector.h" #include "base/strings/string_piece.h" #include "build/build_config.h" #include "components/prefs/pref_service.h" @@ -20,7 +19,7 @@ namespace base { class MessageLoop; class Thread; -} +} // namespace base namespace content { struct MainFunctionParams; @@ -29,7 +28,7 @@ struct MainFunctionParams; namespace extensions { class ExtensionsBrowserClient; class ExtensionsClient; -} +} // namespace extensions #if defined(USE_AURA) namespace wm { diff --git a/libcef/browser/browser_main_win.cc b/libcef/browser/browser_main_win.cc index fa85e6761..815128484 100644 --- a/libcef/browser/browser_main_win.cc +++ b/libcef/browser/browser_main_win.cc @@ -9,7 +9,6 @@ #include "libcef/browser/browser_main.h" #include "cef/grit/cef_strings.h" -#include "chrome/common/chrome_utility_messages.h" #include "content/public/browser/utility_process_host.h" #include "content/public/browser/utility_process_host_client.h" #include "ui/base/l10n/l10n_util.h" diff --git a/libcef/browser/chrome_browser_process_stub.cc b/libcef/browser/chrome_browser_process_stub.cc index 79eb1b2a7..377679b9d 100644 --- a/libcef/browser/chrome_browser_process_stub.cc +++ b/libcef/browser/chrome_browser_process_stub.cc @@ -37,12 +37,13 @@ void ChromeBrowserProcessStub::Initialize( DCHECK(!context_initialized_); DCHECK(!shutdown_); - base::FilePath net_log_path; - if (command_line.HasSwitch(switches::kLogNetLog)) - net_log_path = command_line.GetSwitchValuePath(switches::kLogNetLog); - net_log_.reset(new net_log::ChromeNetLog( - net_log_path, GetNetCaptureModeFromCommandLine(command_line), - command_line.GetCommandLineString(), std::string())); + net_log_ = base::MakeUnique(); + if (command_line.HasSwitch(switches::kLogNetLog)) { + net_log_->StartWritingToFile( + command_line.GetSwitchValuePath(switches::kLogNetLog), + GetNetCaptureModeFromCommandLine(command_line), + command_line.GetCommandLineString(), std::string()); + } initialized_ = true; } @@ -349,7 +350,7 @@ ChromeBrowserProcessStub::CachedDefaultWebClientState() { return shell_integration::UNKNOWN_DEFAULT; } -memory::TabManager* ChromeBrowserProcessStub::GetTabManager() { +resource_coordinator::TabManager* ChromeBrowserProcessStub::GetTabManager() { NOTREACHED(); return NULL; } @@ -360,6 +361,12 @@ ChromeBrowserProcessStub::GetPhysicalWebDataSource() { return NULL; } +prefs::InProcessPrefServiceFactory* +ChromeBrowserProcessStub::pref_service_factory() const { + NOTREACHED(); + return NULL; +} + content::BrowserContext* ChromeBrowserProcessStub::GetBrowserContextRedirectedInIncognito( content::BrowserContext* context) { diff --git a/libcef/browser/chrome_browser_process_stub.h b/libcef/browser/chrome_browser_process_stub.h index 47a93c40f..ece788fd8 100644 --- a/libcef/browser/chrome_browser_process_stub.h +++ b/libcef/browser/chrome_browser_process_stub.h @@ -106,8 +106,9 @@ class ChromeBrowserProcessStub : public BrowserProcess, gcm::GCMDriver* gcm_driver() override; shell_integration::DefaultWebClientState CachedDefaultWebClientState() override; - memory::TabManager* GetTabManager() override; + resource_coordinator::TabManager* GetTabManager() override; physical_web::PhysicalWebDataSource* GetPhysicalWebDataSource() override; + prefs::InProcessPrefServiceFactory* pref_service_factory() const override; // BrowserContextIncognitoHelper implementation. content::BrowserContext* GetBrowserContextRedirectedInIncognito( diff --git a/libcef/browser/content_browser_client.cc b/libcef/browser/content_browser_client.cc index 9bcdc579c..c2d8b7e7a 100644 --- a/libcef/browser/content_browser_client.cc +++ b/libcef/browser/content_browser_client.cc @@ -44,7 +44,7 @@ #include "base/path_service.h" #include "cef/grit/cef_resources.h" #include "chrome/browser/profiles/profile.h" -#include "chrome/browser/spellchecker/spellcheck_message_filter.h" +#include "chrome/browser/spellchecker/spell_check_host_impl.h" #include "chrome/common/chrome_switches.h" #include "chrome/grit/browser_resources.h" #include "components/navigation_interception/intercept_navigation_throttle.h" @@ -246,14 +246,32 @@ class CefSelectClientCertificateCallbackImpl CefRefPtr cert) { CEF_REQUIRE_UIT(); - scoped_refptr x509cert = NULL; if (cert) { CefX509CertificateImpl* certImpl = static_cast(cert.get()); - x509cert = certImpl->GetInternalCertObject(); + certImpl->AcquirePrivateKey( + base::Bind(&CefSelectClientCertificateCallbackImpl::RunWithPrivateKey, + base::Passed(std::move(delegate)), cert)); + return; } - delegate->ContinueWithCertificate(x509cert.get()); + delegate->ContinueWithCertificate(nullptr, nullptr); + } + + static void RunWithPrivateKey( + std::unique_ptr delegate, + CefRefPtr cert, + scoped_refptr key) { + CEF_REQUIRE_UIT(); + DCHECK(cert); + + if (key) { + CefX509CertificateImpl* certImpl = + static_cast(cert.get()); + delegate->ContinueWithCertificate(certImpl->GetInternalCertObject(), key); + } else { + delegate->ContinueWithCertificate(nullptr, nullptr); + } } std::unique_ptr delegate_; @@ -449,20 +467,19 @@ content::BrowserMainParts* CefContentBrowserClient::CreateBrowserMainParts( void CefContentBrowserClient::RenderProcessWillLaunch( content::RenderProcessHost* host) { - const base::CommandLine* command_line = - base::CommandLine::ForCurrentProcess(); const int id = host->GetID(); Profile* profile = Profile::FromBrowserContext(host->GetBrowserContext()); host->AddFilter(new CefBrowserMessageFilter(id)); host->AddFilter(new printing::CefPrintingMessageFilter(id, profile)); - if (!command_line->HasSwitch(switches::kDisableSpellChecking)) { - host->AddFilter(new SpellCheckMessageFilter(id)); #if defined(OS_MACOSX) + const base::CommandLine* command_line = + base::CommandLine::ForCurrentProcess(); + if (!command_line->HasSwitch(switches::kDisableSpellChecking)) { host->AddFilter(new SpellCheckMessageFilterPlatform(id)); -#endif } +#endif host->AddFilter(new CefPluginInfoMessageFilter( id, static_cast(profile))); @@ -578,8 +595,9 @@ void CefContentBrowserClient::SiteInstanceDeleting( void CefContentBrowserClient::RegisterOutOfProcessServices( OutOfProcessServiceMap* services) { - services->emplace(printing::mojom::kServiceName, - base::ASCIIToUTF16("PDF Compositor Service")); + (*services)[printing::mojom::kServiceName] = { + base::ASCIIToUTF16("PDF Compositor Service"), + content::SANDBOX_TYPE_UTILITY}; } std::unique_ptr CefContentBrowserClient::GetServiceManifestOverlay( @@ -712,12 +730,9 @@ CefContentBrowserClient::CreateQuotaPermissionContext() { void CefContentBrowserClient::GetQuotaSettings( content::BrowserContext* context, content::StoragePartition* partition, - const storage::OptionalQuotaSettingsCallback& callback) { - content::BrowserThread::PostTaskAndReplyWithResult( - content::BrowserThread::FILE, FROM_HERE, - base::Bind(&storage::CalculateNominalDynamicSettings, - partition->GetPath(), context->IsOffTheRecord()), - callback); + storage::OptionalQuotaSettingsCallback callback) { + storage::GetNominalDynamicSettings( + partition->GetPath(), context->IsOffTheRecord(), std::move(callback)); } content::MediaObserver* CefContentBrowserClient::GetMediaObserver() { @@ -783,7 +798,7 @@ void CefContentBrowserClient::AllowCertificateError( void CefContentBrowserClient::SelectClientCertificate( content::WebContents* web_contents, net::SSLCertRequestInfo* cert_request_info, - net::CertificateList client_certs, + net::ClientCertIdentityList client_certs, std::unique_ptr delegate) { CEF_REQUIRE_UIT(); @@ -797,15 +812,14 @@ void CefContentBrowserClient::SelectClientCertificate( } if (!handler.get()) { - delegate->ContinueWithCertificate(NULL); + delegate->ContinueWithCertificate(nullptr, nullptr); return; } CefRequestHandler::X509CertificateList certs; - for (std::vector>::iterator iter = - client_certs.begin(); + for (net::ClientCertIdentityList::iterator iter = client_certs.begin(); iter != client_certs.end(); iter++) { - certs.push_back(new CefX509CertificateImpl(*iter)); + certs.push_back(new CefX509CertificateImpl(std::move(*iter))); } CefRefPtr callbackImpl( @@ -921,10 +935,8 @@ CefContentBrowserClient::CreateThrottlesForNavigation( std::unique_ptr throttle = base::MakeUnique( - navigation_handle, - base::Bind(&NavigationOnUIThread, is_main_frame, frame_id, - parent_frame_id), - true); + navigation_handle, base::Bind(&NavigationOnUIThread, is_main_frame, + frame_id, parent_frame_id)); throttles.push_back(std::move(throttle)); return throttles; @@ -964,6 +976,22 @@ bool CefContentBrowserClient::PreSpawnRenderer(sandbox::TargetPolicy* policy) { } #endif // defined(OS_WIN) +void CefContentBrowserClient::ExposeInterfacesToRenderer( + service_manager::BinderRegistry* registry, + content::AssociatedInterfaceRegistry* associated_registry, + content::RenderProcessHost* render_process_host) { + const base::CommandLine* command_line = + base::CommandLine::ForCurrentProcess(); + scoped_refptr ui_task_runner = + content::BrowserThread::GetTaskRunnerForThread( + content::BrowserThread::UI); + if (!command_line->HasSwitch(switches::kDisableSpellChecking)) { + registry->AddInterface( + base::Bind(&SpellCheckHostImpl::Create, render_process_host->GetID()), + ui_task_runner); + } +} + void CefContentBrowserClient::RegisterCustomScheme(const std::string& scheme) { // Register as a Web-safe scheme so that requests for the scheme from a // render process will be allowed in resource_dispatcher_host_impl.cc diff --git a/libcef/browser/content_browser_client.h b/libcef/browser/content_browser_client.h index 977a61ea1..2a9da70f2 100644 --- a/libcef/browser/content_browser_client.h +++ b/libcef/browser/content_browser_client.h @@ -26,7 +26,7 @@ class CefResourceDispatcherHostDelegate; namespace content { class PluginServiceFilter; class SiteInstance; -} +} // namespace content namespace extensions { class Extension; @@ -59,7 +59,7 @@ class CefContentBrowserClient : public content::ContentBrowserClient { void GetQuotaSettings( content::BrowserContext* context, content::StoragePartition* partition, - const storage::OptionalQuotaSettingsCallback& callback) override; + storage::OptionalQuotaSettingsCallback callback) override; content::MediaObserver* GetMediaObserver() override; content::SpeechRecognitionManagerDelegate* CreateSpeechRecognitionManagerDelegate() override; @@ -77,7 +77,7 @@ class CefContentBrowserClient : public content::ContentBrowserClient { void SelectClientCertificate( content::WebContents* web_contents, net::SSLCertRequestInfo* cert_request_info, - net::CertificateList client_certs, + net::ClientCertIdentityList client_certs, std::unique_ptr delegate) override; bool CanCreateWindow(content::RenderFrameHost* opener, const GURL& opener_url, @@ -115,6 +115,11 @@ class CefContentBrowserClient : public content::ContentBrowserClient { bool PreSpawnRenderer(sandbox::TargetPolicy* policy) override; #endif + void ExposeInterfacesToRenderer( + service_manager::BinderRegistry* registry, + content::AssociatedInterfaceRegistry* associated_registry, + content::RenderProcessHost* render_process_host) override; + // Perform browser process registration for the custom scheme. void RegisterCustomScheme(const std::string& scheme); diff --git a/libcef/browser/context.cc b/libcef/browser/context.cc index b9bbefbad..933aeddb6 100644 --- a/libcef/browser/context.cc +++ b/libcef/browser/context.cc @@ -22,6 +22,7 @@ #include "base/debug/debugger.h" #include "base/files/file_util.h" #include "base/synchronization/waitable_event.h" +#include "components/network_session_configurator/common/network_switches.h" #include "content/app/content_service_manager_main_delegate.h" #include "content/public/browser/notification_service.h" #include "content/public/browser/notification_types.h" diff --git a/libcef/browser/cookie_manager_impl.cc b/libcef/browser/cookie_manager_impl.cc index 487eb5581..56d764f8d 100644 --- a/libcef/browser/cookie_manager_impl.cc +++ b/libcef/browser/cookie_manager_impl.cc @@ -94,7 +94,7 @@ void RunAsyncCompletionOnIOThread(CefRefPtr callback) { // Always execute the callback asynchronously. void DeleteCookiesCallbackImpl(CefRefPtr callback, - int num_deleted) { + uint32_t num_deleted) { if (!callback.get()) return; CEF_POST_TASK(CEF_IOT, base::Bind(&CefDeleteCookiesCallback::OnComplete, diff --git a/libcef/browser/devtools_frontend.cc b/libcef/browser/devtools_frontend.cc index a33589955..64459b0c2 100644 --- a/libcef/browser/devtools_frontend.cc +++ b/libcef/browser/devtools_frontend.cc @@ -6,14 +6,18 @@ #include +#include + #include "libcef/browser/browser_context.h" #include "libcef/browser/devtools_manager_delegate.h" #include "libcef/browser/net/devtools_scheme_handler.h" +#include "base/guid.h" #include "base/json/json_reader.h" #include "base/json/json_writer.h" #include "base/json/string_escape.h" #include "base/macros.h" +#include "base/memory/ptr_util.h" #include "base/strings/string_number_conversions.h" #include "base/strings/stringprintf.h" #include "base/strings/utf_string_conversions.h" @@ -22,6 +26,7 @@ #include "components/prefs/scoped_user_pref_update.h" #include "content/public/browser/browser_context.h" #include "content/public/browser/browser_thread.h" +#include "content/public/browser/navigation_handle.h" #include "content/public/browser/render_frame_host.h" #include "content/public/browser/render_view_host.h" #include "content/public/browser/storage_partition.h" @@ -189,14 +194,24 @@ CefDevToolsFrontend::~CefDevToolsFrontend() { delete pair.first; } -void CefDevToolsFrontend::RenderViewCreated( - content::RenderViewHost* render_view_host) { - if (!frontend_host_) { +void CefDevToolsFrontend::ReadyToCommitNavigation( + content::NavigationHandle* navigation_handle) { + content::RenderFrameHost* frame = navigation_handle->GetRenderFrameHost(); + if (navigation_handle->IsInMainFrame()) { frontend_host_.reset(content::DevToolsFrontendHost::Create( - web_contents()->GetMainFrame(), + frame, base::Bind(&CefDevToolsFrontend::HandleMessageFromDevToolsFrontend, base::Unretained(this)))); + return; } + + std::string origin = navigation_handle->GetURL().GetOrigin().spec(); + auto it = extensions_api_.find(origin); + if (it == extensions_api_.end()) + return; + std::string script = base::StringPrintf("%s(\"%s\")", it->second.c_str(), + base::GenerateGUID().c_str()); + content::DevToolsFrontendHost::SetupExtensionsAPI(frame, script); } void CefDevToolsFrontend::DocumentAvailableInMainFrame() { @@ -296,7 +311,7 @@ void CefDevToolsFrontend::HandleMessageFromDevToolsFrontend( destination: OTHER } policy { - cookies_allowed: true + cookies_allowed: YES cookies_store: "user" setting: "It's not possible to disable this feature from settings." @@ -346,6 +361,12 @@ void CefDevToolsFrontend::HandleMessageFromDevToolsFrontend( } else if (method == "reattach") { agent_host_->DetachClient(this); agent_host_->AttachClient(this); + } else if (method == "registerExtensionsAPI") { + std::string origin; + std::string script; + if (!params->GetString(0, &origin) || !params->GetString(1, &script)) + return; + extensions_api_[origin + "/"] = script; } else { return; } @@ -386,16 +407,16 @@ void CefDevToolsFrontend::OnURLFetchComplete(const net::URLFetcher* source) { DCHECK(it != pending_requests_.end()); base::DictionaryValue response; - base::DictionaryValue* headers = new base::DictionaryValue(); + auto headers = base::MakeUnique(); net::HttpResponseHeaders* rh = source->GetResponseHeaders(); response.SetInteger("statusCode", rh ? rh->response_code() : 200); - response.Set("headers", headers); size_t iterator = 0; std::string name; std::string value; while (rh && rh->EnumerateHeaderLines(&iterator, &name, &value)) headers->SetString(name, value); + response.Set("headers", std::move(headers)); SendMessageAck(it->second, &response); pending_requests_.erase(it); diff --git a/libcef/browser/devtools_frontend.h b/libcef/browser/devtools_frontend.h index 21b181d46..b4be435c0 100644 --- a/libcef/browser/devtools_frontend.h +++ b/libcef/browser/devtools_frontend.h @@ -24,9 +24,10 @@ class Value; } namespace content { +class NavigationHandle; class RenderViewHost; class WebContents; -} +} // namespace content class PrefService; @@ -73,7 +74,8 @@ class CefDevToolsFrontend : public content::WebContentsObserver, private: // WebContentsObserver overrides - void RenderViewCreated(content::RenderViewHost* render_view_host) override; + void ReadyToCommitNavigation( + content::NavigationHandle* navigation_handle) override; void DocumentAvailableInMainFrame() override; void WebContentsDestroyed() override; @@ -91,6 +93,8 @@ class CefDevToolsFrontend : public content::WebContentsObserver, std::unique_ptr frontend_host_; using PendingRequestsMap = std::map; PendingRequestsMap pending_requests_; + using ExtensionsAPIs = std::map; + ExtensionsAPIs extensions_api_; base::WeakPtrFactory weak_factory_; DISALLOW_COPY_AND_ASSIGN(CefDevToolsFrontend); diff --git a/libcef/browser/extensions/extensions_browser_client.cc b/libcef/browser/extensions/extensions_browser_client.cc index d8f098064..c0558dcab 100644 --- a/libcef/browser/extensions/extensions_browser_client.cc +++ b/libcef/browser/extensions/extensions_browser_client.cc @@ -245,6 +245,11 @@ KioskDelegate* CefExtensionsBrowserClient::GetKioskDelegate() { return NULL; } +bool CefExtensionsBrowserClient::IsLockScreenContext( + content::BrowserContext* context) { + return false; +} + void CefExtensionsBrowserClient::SetAPIClientForTest( ExtensionsAPIClient* api_client) { api_client_.reset(api_client); diff --git a/libcef/browser/extensions/extensions_browser_client.h b/libcef/browser/extensions/extensions_browser_client.h index 8ca8586ad..967a7e18e 100644 --- a/libcef/browser/extensions/extensions_browser_client.h +++ b/libcef/browser/extensions/extensions_browser_client.h @@ -80,6 +80,7 @@ class CefExtensionsBrowserClient : public ExtensionsBrowserClient { ExtensionWebContentsObserver* GetExtensionWebContentsObserver( content::WebContents* web_contents) override; KioskDelegate* GetKioskDelegate() override; + bool IsLockScreenContext(content::BrowserContext* context) override; // Sets the API client. void SetAPIClientForTest(ExtensionsAPIClient* api_client); diff --git a/libcef/browser/image_impl.cc b/libcef/browser/image_impl.cc index e7d63b4d3..70f13e523 100644 --- a/libcef/browser/image_impl.cc +++ b/libcef/browser/image_impl.cc @@ -62,13 +62,7 @@ bool PNGMethod(bool with_transparency, bool JPEGMethod(int quality, const SkBitmap& bitmap, std::vector* compressed) { - return gfx::JPEGCodec::Encode( - reinterpret_cast(bitmap.getPixels()), - bitmap.colorType() == kBGRA_8888_SkColorType - ? gfx::JPEGCodec::FORMAT_BGRA - : gfx::JPEGCodec::FORMAT_RGBA, - bitmap.width(), bitmap.height(), static_cast(bitmap.rowBytes()), - quality, compressed); + return gfx::JPEGCodec::Encode(bitmap, quality, compressed); } } // namespace diff --git a/libcef/browser/menu_manager.cc b/libcef/browser/menu_manager.cc index 66ed86e58..909982e3a 100644 --- a/libcef/browser/menu_manager.cc +++ b/libcef/browser/menu_manager.cc @@ -112,9 +112,7 @@ void CefMenuManager::Destroy() { bool CefMenuManager::IsShowingContextMenu() { if (!web_contents()) return false; - content::RenderWidgetHostView* view = - web_contents()->GetRenderWidgetHostView(); - return (view && view->IsShowingContextMenu()); + return web_contents()->IsShowingContextMenu(); } bool CefMenuManager::CreateContextMenu( @@ -241,10 +239,7 @@ void CefMenuManager::MenuWillShow(CefRefPtr source) { return; // Notify the host before showing the context menu. - content::RenderWidgetHostView* view = - web_contents()->GetRenderWidgetHostView(); - if (view) - view->SetShowingContextMenu(true); + web_contents()->SetShowingContextMenu(true); } void CefMenuManager::MenuClosed(CefRefPtr source) { @@ -267,10 +262,7 @@ void CefMenuManager::MenuClosed(CefRefPtr source) { } // Notify the host after closing the context menu. - content::RenderWidgetHostView* view = - web_contents()->GetRenderWidgetHostView(); - if (view) - view->SetShowingContextMenu(false); + web_contents()->SetShowingContextMenu(false); web_contents()->NotifyContextMenuClosed(params_.custom_context); } diff --git a/libcef/browser/native/native_menu_win.cc b/libcef/browser/native/native_menu_win.cc index 8db808187..a2a50e721 100644 --- a/libcef/browser/native/native_menu_win.cc +++ b/libcef/browser/native/native_menu_win.cc @@ -32,7 +32,6 @@ #include "ui/views/controls/menu/menu_config.h" #include "ui/views/controls/menu/menu_insertion_delegate_win.h" #include "ui/views/controls/menu/menu_listener.h" -#include "ui/views/layout/layout_constants.h" using ui::NativeTheme; @@ -50,6 +49,10 @@ static const int kItemLeftMargin = 4; // The width for displaying the sub-menu arrow. static const int kArrowWidth = 10; +// Horizontal spacing between the end of an item (i.e. an icon or a checkbox) +// and the start of its corresponding text. +constexpr int kItemLabelSpacing = 10; + namespace { // Draws the top layer of the canvas into the specified HDC. Only works @@ -195,7 +198,7 @@ class CefNativeMenuWin::MenuHostWindow { gfx::FontList font_list; measure_item_struct->itemWidth = gfx::GetStringWidth(data->label, font_list) + kIconWidth + - kItemLeftMargin + views::kItemLabelSpacing - + kItemLeftMargin + kItemLabelSpacing - GetSystemMetrics(SM_CXMENUCHECK); if (data->submenu.get()) measure_item_struct->itemWidth += kArrowWidth; @@ -241,7 +244,7 @@ class CefNativeMenuWin::MenuHostWindow { rect.top += kItemTopMargin; // Should we add kIconWidth only when icon.width() != 0 ? rect.left += kItemLeftMargin + kIconWidth; - rect.right -= views::kItemLabelSpacing; + rect.right -= kItemLabelSpacing; UINT format = DT_TOP | DT_SINGLELINE; // Check whether the mnemonics should be underlined. BOOL underline_mnemonics; diff --git a/libcef/browser/native/window_delegate_view.cc b/libcef/browser/native/window_delegate_view.cc index 26cc41feb..2843b5b7b 100644 --- a/libcef/browser/native/window_delegate_view.cc +++ b/libcef/browser/native/window_delegate_view.cc @@ -54,7 +54,7 @@ void CefWindowDelegateView::Init(gfx::AcceleratedWidget parent_widget, } void CefWindowDelegateView::InitContent() { - set_background(views::Background::CreateSolidBackground(background_color_)); + SetBackground(views::CreateSolidBackground(background_color_)); SetLayoutManager(new views::FillLayout()); AddChildView(web_view_); } diff --git a/libcef/browser/native/window_x11.cc b/libcef/browser/native/window_x11.cc index 638269961..6ec08c9e3 100644 --- a/libcef/browser/native/window_x11.cc +++ b/libcef/browser/native/window_x11.cc @@ -27,10 +27,6 @@ const char kNetWMPing[] = "_NET_WM_PING"; const char kNetWMState[] = "_NET_WM_STATE"; const char kXdndProxy[] = "XdndProxy"; -const char* kAtomsToCache[] = { - kAtom, kWMDeleteWindow, kWMProtocols, kNetWMPid, - kNetWMPing, kNetWMState, kXdndProxy, NULL}; - ::Window FindEventTarget(const base::NativeEvent& xev) { ::Window target = xev->xany.window; if (xev->type == GenericEvent) @@ -75,6 +71,7 @@ const char* kAtomsToCache[] = { } return top_level_window; } + } // namespace CEF_EXPORT XDisplay* cef_get_xdisplay() { @@ -93,7 +90,6 @@ CefWindowX11::CefWindowX11(CefRefPtr browser, window_mapped_(false), bounds_(bounds), focus_pending_(false), - atom_cache_(xdisplay_, kAtomsToCache), weak_ptr_factory_(this) { if (parent_xwindow_ == None) parent_xwindow_ = DefaultRootWindow(xdisplay_); @@ -121,8 +117,8 @@ CefWindowX11::CefWindowX11(CefRefPtr browser, // should listen for activation events and anything else that GTK+ listens // for, and do something useful. ::Atom protocols[2]; - protocols[0] = atom_cache_.GetAtom(kWMDeleteWindow); - protocols[1] = atom_cache_.GetAtom(kNetWMPing); + protocols[0] = gfx::GetAtom(kWMDeleteWindow); + protocols[1] = gfx::GetAtom(kNetWMPing); XSetWMProtocols(xdisplay_, xwindow_, protocols, 2); // We need a WM_CLIENT_MACHINE and WM_LOCALE_NAME value so we integrate with @@ -135,12 +131,8 @@ CefWindowX11::CefWindowX11(CefRefPtr browser, static_assert(sizeof(long) >= sizeof(pid_t), "pid_t should not be larger than long"); long pid = getpid(); - XChangeProperty(xdisplay_, xwindow_, atom_cache_.GetAtom(kNetWMPid), - XA_CARDINAL, 32, PropModeReplace, - reinterpret_cast(&pid), 1); - - // Allow subclasses to create and cache additional atoms. - atom_cache_.allow_uncached_atoms(); + XChangeProperty(xdisplay_, xwindow_, gfx::GetAtom(kNetWMPid), XA_CARDINAL, 32, + PropModeReplace, reinterpret_cast(&pid), 1); } CefWindowX11::~CefWindowX11() { @@ -153,9 +145,9 @@ void CefWindowX11::Close() { XEvent ev = {0}; ev.xclient.type = ClientMessage; ev.xclient.window = xwindow_; - ev.xclient.message_type = atom_cache_.GetAtom(kWMProtocols); + ev.xclient.message_type = gfx::GetAtom(kWMProtocols); ev.xclient.format = 32; - ev.xclient.data.l[0] = atom_cache_.GetAtom(kWMDeleteWindow); + ev.xclient.data.l[0] = gfx::GetAtom(kWMDeleteWindow); ev.xclient.data.l[1] = CurrentTime; XSendEvent(xdisplay_, xwindow_, False, NoEventMask, &ev); } @@ -200,13 +192,12 @@ void CefWindowX11::Show() { if (proxy_target != child) { // Set the proxy target for the top-most window. - XChangeProperty(xdisplay_, toplevel_window, - atom_cache_.GetAtom(kXdndProxy), XA_WINDOW, 32, - PropModeReplace, + XChangeProperty(xdisplay_, toplevel_window, gfx::GetAtom(kXdndProxy), + XA_WINDOW, 32, PropModeReplace, reinterpret_cast(&child), 1); // Do the same for the proxy target per the spec. - XChangeProperty(xdisplay_, child, atom_cache_.GetAtom(kXdndProxy), - XA_WINDOW, 32, PropModeReplace, + XChangeProperty(xdisplay_, child, gfx::GetAtom(kXdndProxy), XA_WINDOW, + 32, PropModeReplace, reinterpret_cast(&child), 1); } } @@ -316,15 +307,15 @@ uint32_t CefWindowX11::DispatchEvent(const ui::PlatformEvent& event) { } case ClientMessage: { Atom message_type = xev->xclient.message_type; - if (message_type == atom_cache_.GetAtom(kWMProtocols)) { + if (message_type == gfx::GetAtom(kWMProtocols)) { Atom protocol = static_cast(xev->xclient.data.l[0]); - if (protocol == atom_cache_.GetAtom(kWMDeleteWindow)) { + if (protocol == gfx::GetAtom(kWMDeleteWindow)) { // We have received a close message from the window manager. if (!browser_ || browser_->TryCloseBrowser()) { // Allow the close. XDestroyWindow(xdisplay_, xwindow_); } - } else if (protocol == atom_cache_.GetAtom(kNetWMPing)) { + } else if (protocol == gfx::GetAtom(kNetWMPing)) { XEvent reply_event = *xev; reply_event.xclient.window = parent_xwindow_; @@ -370,7 +361,7 @@ uint32_t CefWindowX11::DispatchEvent(const ui::PlatformEvent& event) { break; case PropertyNotify: { ::Atom changed_atom = xev->xproperty.atom; - if (changed_atom == atom_cache_.GetAtom(kNetWMState)) { + if (changed_atom == gfx::GetAtom(kNetWMState)) { // State change event like minimize/maximize. if (browser_.get()) { ::Window child = FindChild(xdisplay_, xwindow_); @@ -386,8 +377,8 @@ uint32_t CefWindowX11::DispatchEvent(const ui::PlatformEvent& event) { // Set an empty list of property values to pass the check in // DesktopWindowTreeHostX11::OnWMStateUpdated(). XChangeProperty(xdisplay_, child, - atom_cache_.GetAtom(kNetWMState), // name - atom_cache_.GetAtom(kAtom), // type + gfx::GetAtom(kNetWMState), // name + gfx::GetAtom(kAtom), // type 32, // size in bits of items in 'value' PropModeReplace, NULL, 0); // num items diff --git a/libcef/browser/native/window_x11.h b/libcef/browser/native/window_x11.h index 4d8c31cf6..90d409d37 100644 --- a/libcef/browser/native/window_x11.h +++ b/libcef/browser/native/window_x11.h @@ -70,8 +70,6 @@ class CefWindowX11 : public ui::PlatformEventDispatcher { bool focus_pending_; - ui::X11AtomCache atom_cache_; - // Must always be the last member. base::WeakPtrFactory weak_ptr_factory_; diff --git a/libcef/browser/net/cookie_store_proxy.cc b/libcef/browser/net/cookie_store_proxy.cc index 1d8fa0a71..ac1a9bf90 100644 --- a/libcef/browser/net/cookie_store_proxy.cc +++ b/libcef/browser/net/cookie_store_proxy.cc @@ -28,11 +28,11 @@ void CefCookieStoreProxy::SetCookieWithOptionsAsync( const GURL& url, const std::string& cookie_line, const net::CookieOptions& options, - const SetCookiesCallback& callback) { + SetCookiesCallback callback) { net::CookieStore* cookie_store = GetCookieStore(); if (cookie_store) { cookie_store->SetCookieWithOptionsAsync(url, cookie_line, options, - callback); + std::move(callback)); } } @@ -49,64 +49,78 @@ void CefCookieStoreProxy::SetCookieWithDetailsAsync( bool http_only, net::CookieSameSite same_site, net::CookiePriority priority, - const SetCookiesCallback& callback) { + SetCookiesCallback callback) { net::CookieStore* cookie_store = GetCookieStore(); if (cookie_store) { cookie_store->SetCookieWithDetailsAsync( url, name, value, domain, path, creation_time, expiration_time, - last_access_time, secure, http_only, same_site, priority, callback); + last_access_time, secure, http_only, same_site, priority, + std::move(callback)); + } +} + +void CefCookieStoreProxy::SetCanonicalCookieAsync( + std::unique_ptr cookie, + bool secure_source, + bool modify_http_only, + SetCookiesCallback callback) { + net::CookieStore* cookie_store = GetCookieStore(); + if (cookie_store) { + cookie_store->SetCanonicalCookieAsync(std::move(cookie), secure_source, + modify_http_only, + std::move(callback)); } } void CefCookieStoreProxy::GetCookiesWithOptionsAsync( const GURL& url, const net::CookieOptions& options, - const GetCookiesCallback& callback) { + GetCookiesCallback callback) { net::CookieStore* cookie_store = GetCookieStore(); if (cookie_store) - cookie_store->GetCookiesWithOptionsAsync(url, options, callback); + cookie_store->GetCookiesWithOptionsAsync(url, options, std::move(callback)); } void CefCookieStoreProxy::GetCookieListWithOptionsAsync( const GURL& url, const net::CookieOptions& options, - const GetCookieListCallback& callback) { + GetCookieListCallback callback) { net::CookieStore* cookie_store = GetCookieStore(); if (cookie_store) - cookie_store->GetCookieListWithOptionsAsync(url, options, callback); + cookie_store->GetCookieListWithOptionsAsync(url, options, + std::move(callback)); } -void CefCookieStoreProxy::GetAllCookiesAsync( - const GetCookieListCallback& callback) { +void CefCookieStoreProxy::GetAllCookiesAsync(GetCookieListCallback callback) { net::CookieStore* cookie_store = GetCookieStore(); if (cookie_store) - cookie_store->GetAllCookiesAsync(callback); + cookie_store->GetAllCookiesAsync(std::move(callback)); } void CefCookieStoreProxy::DeleteCookieAsync(const GURL& url, const std::string& cookie_name, - const base::Closure& callback) { + base::OnceClosure callback) { net::CookieStore* cookie_store = GetCookieStore(); if (cookie_store) - cookie_store->DeleteCookieAsync(url, cookie_name, callback); + cookie_store->DeleteCookieAsync(url, cookie_name, std::move(callback)); } void CefCookieStoreProxy::DeleteCanonicalCookieAsync( const net::CanonicalCookie& cookie, - const DeleteCallback& callback) { + DeleteCallback callback) { net::CookieStore* cookie_store = GetCookieStore(); if (cookie_store) - cookie_store->DeleteCanonicalCookieAsync(cookie, callback); + cookie_store->DeleteCanonicalCookieAsync(cookie, std::move(callback)); } void CefCookieStoreProxy::DeleteAllCreatedBetweenAsync( const base::Time& delete_begin, const base::Time& delete_end, - const DeleteCallback& callback) { + DeleteCallback callback) { net::CookieStore* cookie_store = GetCookieStore(); if (cookie_store) { cookie_store->DeleteAllCreatedBetweenAsync(delete_begin, delete_end, - callback); + std::move(callback)); } } @@ -114,25 +128,24 @@ void CefCookieStoreProxy::DeleteAllCreatedBetweenWithPredicateAsync( const base::Time& delete_begin, const base::Time& delete_end, const CookiePredicate& predicate, - const DeleteCallback& callback) { + DeleteCallback callback) { net::CookieStore* cookie_store = GetCookieStore(); if (cookie_store) { cookie_store->DeleteAllCreatedBetweenWithPredicateAsync( - delete_begin, delete_end, predicate, callback); + delete_begin, delete_end, predicate, std::move(callback)); } } -void CefCookieStoreProxy::DeleteSessionCookiesAsync( - const DeleteCallback& callback) { +void CefCookieStoreProxy::DeleteSessionCookiesAsync(DeleteCallback callback) { net::CookieStore* cookie_store = GetCookieStore(); if (cookie_store) - cookie_store->DeleteSessionCookiesAsync(callback); + cookie_store->DeleteSessionCookiesAsync(std::move(callback)); } -void CefCookieStoreProxy::FlushStore(const base::Closure& callback) { +void CefCookieStoreProxy::FlushStore(base::OnceClosure callback) { net::CookieStore* cookie_store = GetCookieStore(); if (cookie_store) - cookie_store->FlushStore(callback); + cookie_store->FlushStore(std::move(callback)); } std::unique_ptr diff --git a/libcef/browser/net/cookie_store_proxy.h b/libcef/browser/net/cookie_store_proxy.h index 78f1effcb..69e9bd2de 100644 --- a/libcef/browser/net/cookie_store_proxy.h +++ b/libcef/browser/net/cookie_store_proxy.h @@ -25,7 +25,7 @@ class CefCookieStoreProxy : public net::CookieStore { void SetCookieWithOptionsAsync(const GURL& url, const std::string& cookie_line, const net::CookieOptions& options, - const SetCookiesCallback& callback) override; + SetCookiesCallback callback) override; void SetCookieWithDetailsAsync(const GURL& url, const std::string& name, const std::string& value, @@ -38,30 +38,33 @@ class CefCookieStoreProxy : public net::CookieStore { bool http_only, net::CookieSameSite same_site, net::CookiePriority priority, - const SetCookiesCallback& callback) override; + SetCookiesCallback callback) override; + void SetCanonicalCookieAsync(std::unique_ptr cookie, + bool secure_source, + bool modify_http_only, + SetCookiesCallback callback) override; void GetCookiesWithOptionsAsync(const GURL& url, const net::CookieOptions& options, - const GetCookiesCallback& callback) override; - void GetCookieListWithOptionsAsync( - const GURL& url, - const net::CookieOptions& options, - const GetCookieListCallback& callback) override; - void GetAllCookiesAsync(const GetCookieListCallback& callback) override; + GetCookiesCallback callback) override; + void GetCookieListWithOptionsAsync(const GURL& url, + const net::CookieOptions& options, + GetCookieListCallback callback) override; + void GetAllCookiesAsync(GetCookieListCallback callback) override; void DeleteCookieAsync(const GURL& url, const std::string& cookie_name, - const base::Closure& callback) override; + base::OnceClosure callback) override; void DeleteCanonicalCookieAsync(const net::CanonicalCookie& cookie, - const DeleteCallback& callback) override; + DeleteCallback callback) override; void DeleteAllCreatedBetweenAsync(const base::Time& delete_begin, const base::Time& delete_end, - const DeleteCallback& callback) override; + DeleteCallback callback) override; void DeleteAllCreatedBetweenWithPredicateAsync( const base::Time& delete_begin, const base::Time& delete_end, const CookiePredicate& predicate, - const DeleteCallback& callback) override; - void DeleteSessionCookiesAsync(const DeleteCallback& callback) override; - void FlushStore(const base::Closure& callback) override; + DeleteCallback callback) override; + void DeleteSessionCookiesAsync(DeleteCallback callback) override; + void FlushStore(base::OnceClosure callback) override; std::unique_ptr AddCallbackForCookie( const GURL& url, const std::string& name, diff --git a/libcef/browser/net/network_delegate.cc b/libcef/browser/net/network_delegate.cc index 999555b91..516fefeb6 100644 --- a/libcef/browser/net/network_delegate.cc +++ b/libcef/browser/net/network_delegate.cc @@ -426,8 +426,10 @@ net::NetworkDelegate::AuthRequiredResponse CefNetworkDelegate::OnAuthRequired( return AUTH_REQUIRED_RESPONSE_NO_ACTION; } -bool CefNetworkDelegate::OnCanAccessFile(const net::URLRequest& request, - const base::FilePath& path) const { +bool CefNetworkDelegate::OnCanAccessFile( + const net::URLRequest& request, + const base::FilePath& original_path, + const base::FilePath& absolute_path) const { return true; } diff --git a/libcef/browser/net/network_delegate.h b/libcef/browser/net/network_delegate.h index 761f36971..346b51ee7 100644 --- a/libcef/browser/net/network_delegate.h +++ b/libcef/browser/net/network_delegate.h @@ -43,7 +43,8 @@ class CefNetworkDelegate : public net::NetworkDelegateImpl { net::AuthCredentials* credentials) override; void OnCompleted(net::URLRequest* request, bool started) override; bool OnCanAccessFile(const net::URLRequest& request, - const base::FilePath& path) const override; + const base::FilePath& original_path, + const base::FilePath& absolute_path) const override; bool OnAreExperimentalCookieFeaturesEnabled() const override; // Weak, owned by our owner (CefURLRequestContextGetterImpl). diff --git a/libcef/browser/net/url_request_context.cc b/libcef/browser/net/url_request_context.cc index 3aafa0259..9c6422894 100644 --- a/libcef/browser/net/url_request_context.cc +++ b/libcef/browser/net/url_request_context.cc @@ -5,17 +5,17 @@ #include "libcef/browser/net/url_request_context.h" #if DCHECK_IS_ON() -base::AtomicRefCount CefURLRequestContext::DebugObjCt = 0; +base::AtomicRefCount CefURLRequestContext::DebugObjCt; #endif CefURLRequestContext::CefURLRequestContext() { #if DCHECK_IS_ON() - base::AtomicRefCountInc(&DebugObjCt); + DebugObjCt.Increment(); #endif } CefURLRequestContext::~CefURLRequestContext() { #if DCHECK_IS_ON() - base::AtomicRefCountDec(&DebugObjCt); + DebugObjCt.Decrement(); #endif } diff --git a/libcef/browser/net/url_request_context_getter_impl.cc b/libcef/browser/net/url_request_context_getter_impl.cc index 5c72557b2..f3a35c0d6 100644 --- a/libcef/browser/net/url_request_context_getter_impl.cc +++ b/libcef/browser/net/url_request_context_getter_impl.cc @@ -26,7 +26,8 @@ #include "base/threading/worker_pool.h" #include "build/build_config.h" #include "chrome/browser/browser_process.h" -#include "chrome/browser/net/proxy_service_factory.h" +#include "chrome/browser/net/chrome_mojo_proxy_resolver_factory.h" +#include "chrome/common/chrome_switches.h" #include "chrome/common/pref_names.h" #include "components/net_log/chrome_net_log.h" #include "components/prefs/pref_registry_simple.h" @@ -50,7 +51,10 @@ #include "net/http/http_server_properties_impl.h" #include "net/http/http_util.h" #include "net/http/transport_security_state.h" +#include "net/proxy/dhcp_proxy_script_fetcher_factory.h" +#include "net/proxy/proxy_script_fetcher_impl.h" #include "net/proxy/proxy_service.h" +#include "net/proxy/proxy_service_mojo.h" #include "net/ssl/ssl_config_service_defaults.h" #include "net/url_request/http_user_agent_settings.h" #include "net/url_request/url_request.h" @@ -105,13 +109,58 @@ class CefHttpUserAgentSettings : public net::HttpUserAgentSettings { DISALLOW_COPY_AND_ASSIGN(CefHttpUserAgentSettings); }; +// Based on ProxyServiceFactory::CreateProxyService which was deleted in +// http://crrev.com/1c261ff4. +std::unique_ptr CreateProxyService( + net::NetLog* net_log, + net::URLRequestContext* context, + net::NetworkDelegate* network_delegate, + std::unique_ptr proxy_config_service, + const base::CommandLine& command_line, + bool quick_check_enabled, + bool pac_https_url_stripping_enabled) { + DCHECK_CURRENTLY_ON(BrowserThread::IO); + bool use_v8 = !command_line.HasSwitch(switches::kWinHttpProxyResolver); + // TODO(eroman): Figure out why this doesn't work in single-process mode. + // Should be possible now that a private isolate is used. + // http://crbug.com/474654 + if (use_v8 && command_line.HasSwitch(switches::kSingleProcess)) { + LOG(ERROR) << "Cannot use V8 Proxy resolver in single process mode."; + use_v8 = false; // Fallback to non-v8 implementation. + } + + std::unique_ptr proxy_service; + if (use_v8) { + std::unique_ptr dhcp_proxy_script_fetcher; + net::DhcpProxyScriptFetcherFactory dhcp_factory; + dhcp_proxy_script_fetcher = dhcp_factory.Create(context); + + proxy_service = net::CreateProxyServiceUsingMojoFactory( + ChromeMojoProxyResolverFactory::GetInstance(), + std::move(proxy_config_service), + new net::ProxyScriptFetcherImpl(context), + std::move(dhcp_proxy_script_fetcher), context->host_resolver(), net_log, + network_delegate); + } else { + proxy_service = net::ProxyService::CreateUsingSystemProxyResolver( + std::move(proxy_config_service), net_log); + } + + proxy_service->set_quick_check_enabled(quick_check_enabled); + proxy_service->set_sanitize_url_policy( + pac_https_url_stripping_enabled + ? net::ProxyService::SanitizeUrlPolicy::SAFE + : net::ProxyService::SanitizeUrlPolicy::UNSAFE); + + return proxy_service; +} + } // namespace CefURLRequestContextGetterImpl::CefURLRequestContextGetterImpl( const CefRequestContextSettings& settings, PrefService* pref_service, scoped_refptr io_task_runner, - scoped_refptr file_task_runner, content::ProtocolHandlerMap* protocol_handlers, std::unique_ptr proxy_config_service, content::URLRequestInterceptorScopedVector request_interceptors) @@ -122,7 +171,6 @@ CefURLRequestContextGetterImpl::CefURLRequestContextGetterImpl( io_state_->net_log_ = g_browser_process->net_log(), DCHECK(io_state_->net_log_); io_state_->io_task_runner_ = std::move(io_task_runner); - io_state_->file_task_runner_ = std::move(file_task_runner); io_state_->proxy_config_service_ = std::move(proxy_config_service); io_state_->request_interceptors_ = std::move(request_interceptors); @@ -266,12 +314,12 @@ net::URLRequestContext* CefURLRequestContextGetterImpl::GetURLRequestContext() { io_state_->storage_->set_ct_policy_enforcer(std::move(ct_policy_enforcer)); std::unique_ptr system_proxy_service = - ProxyServiceFactory::CreateProxyService( - io_state_->net_log_, io_state_->url_request_context_.get(), - io_state_->url_request_context_->network_delegate(), - std::move(io_state_->proxy_config_service_), *command_line, - quick_check_enabled_.GetValue(), - pac_https_url_stripping_enabled_.GetValue()); + CreateProxyService(io_state_->net_log_, + io_state_->url_request_context_.get(), + io_state_->url_request_context_->network_delegate(), + std::move(io_state_->proxy_config_service_), + *command_line, quick_check_enabled_.GetValue(), + pac_https_url_stripping_enabled_.GetValue()); io_state_->storage_->set_proxy_service(std::move(system_proxy_service)); io_state_->storage_->set_ssl_config_service( @@ -311,31 +359,34 @@ net::URLRequestContext* CefURLRequestContextGetterImpl::GetURLRequestContext() { net::CACHE_BACKEND_DEFAULT, http_cache_path, 0, BrowserThread::GetTaskRunnerForThread(BrowserThread::CACHE))); - net::HttpNetworkSession::Params network_session_params; - network_session_params.host_resolver = + net::HttpNetworkSession::Context network_session_context; + network_session_context.host_resolver = io_state_->url_request_context_->host_resolver(); - network_session_params.cert_verifier = + network_session_context.cert_verifier = io_state_->url_request_context_->cert_verifier(); - network_session_params.transport_security_state = + network_session_context.transport_security_state = io_state_->url_request_context_->transport_security_state(); - network_session_params.cert_transparency_verifier = + network_session_context.cert_transparency_verifier = io_state_->url_request_context_->cert_transparency_verifier(); - network_session_params.ct_policy_enforcer = + network_session_context.ct_policy_enforcer = io_state_->url_request_context_->ct_policy_enforcer(); - network_session_params.proxy_service = + network_session_context.proxy_service = io_state_->url_request_context_->proxy_service(); - network_session_params.ssl_config_service = + network_session_context.ssl_config_service = io_state_->url_request_context_->ssl_config_service(); - network_session_params.http_auth_handler_factory = + network_session_context.http_auth_handler_factory = io_state_->url_request_context_->http_auth_handler_factory(); - network_session_params.http_server_properties = + network_session_context.http_server_properties = io_state_->url_request_context_->http_server_properties(); + network_session_context.net_log = io_state_->net_log_; + + net::HttpNetworkSession::Params network_session_params; network_session_params.ignore_certificate_errors = settings_.ignore_certificate_errors ? true : false; - network_session_params.net_log = io_state_->net_log_; io_state_->storage_->set_http_network_session( - base::WrapUnique(new net::HttpNetworkSession(network_session_params))); + base::WrapUnique(new net::HttpNetworkSession(network_session_params, + network_session_context))); io_state_->storage_->set_http_transaction_factory( base::WrapUnique(new net::HttpCache( io_state_->storage_->http_network_session(), @@ -349,7 +400,7 @@ net::URLRequestContext* CefURLRequestContextGetterImpl::GetURLRequestContext() { // Install internal scheme handlers that cannot be overridden. scheme::InstallInternalProtectedHandlers( job_factory.get(), io_state_->url_request_manager_.get(), - &io_state_->protocol_handlers_, network_session_params.host_resolver); + &io_state_->protocol_handlers_, network_session_context.host_resolver); io_state_->protocol_handlers_.clear(); // Register internal scheme handlers that can be overridden. @@ -476,7 +527,7 @@ void CefURLRequestContextGetterImpl::CreateProxyConfigService() { io_state_->proxy_config_service_ = net::ProxyService::CreateSystemProxyConfigService( - io_state_->io_task_runner_, io_state_->file_task_runner_); + io_state_->io_task_runner_); } void CefURLRequestContextGetterImpl::UpdateServerWhitelist() { diff --git a/libcef/browser/net/url_request_context_getter_impl.h b/libcef/browser/net/url_request_context_getter_impl.h index 758fcbea3..5678d9877 100644 --- a/libcef/browser/net/url_request_context_getter_impl.h +++ b/libcef/browser/net/url_request_context_getter_impl.h @@ -36,7 +36,7 @@ class ProxyConfigService; class URLRequestContextStorage; class URLRequestJobFactory; class URLRequestJobFactoryImpl; -} +} // namespace net // Isolated URLRequestContextGetter implementation. Life span is primarily // controlled by CefResourceContext and (for the global context) @@ -48,7 +48,6 @@ class CefURLRequestContextGetterImpl : public CefURLRequestContextGetter { const CefRequestContextSettings& settings, PrefService* pref_service, scoped_refptr io_task_runner, - scoped_refptr file_task_runner, content::ProtocolHandlerMap* protocol_handlers, std::unique_ptr proxy_config_service, content::URLRequestInterceptorScopedVector request_interceptors); @@ -101,7 +100,6 @@ class CefURLRequestContextGetterImpl : public CefURLRequestContextGetter { net::NetLog* net_log_ = nullptr; // Guaranteed to outlive this object. scoped_refptr io_task_runner_; - scoped_refptr file_task_runner_; #if defined(OS_POSIX) && !defined(OS_ANDROID) std::string gsapi_library_name_; diff --git a/libcef/browser/osr/osr_accessibility_util.cc b/libcef/browser/osr/osr_accessibility_util.cc index 6076be37b..b2e2f6267 100644 --- a/libcef/browser/osr/osr_accessibility_util.cc +++ b/libcef/browser/osr/osr_accessibility_util.cc @@ -99,6 +99,7 @@ struct PopulateAxNodeAttributes { case ui::AX_ATTR_ACTIVEDESCENDANT_ID: case ui::AX_ATTR_IN_PAGE_LINK_TARGET_ID: case ui::AX_ATTR_ERRORMESSAGE_ID: + case ui::AX_ATTR_DETAILS_ID: case ui::AX_ATTR_MEMBER_OF_ID: case ui::AX_ATTR_NEXT_ON_LINE_ID: case ui::AX_ATTR_PREVIOUS_ON_LINE_ID: @@ -127,6 +128,11 @@ struct PopulateAxNodeAttributes { ToString(static_cast(attr.second))); } break; + case ui::AX_ATTR_RESTRICTION: + attributes->SetString( + ToString(attr.first), + ToString(static_cast(attr.second))); + break; case ui::AX_ATTR_SORT_DIRECTION: if (ui::AX_SORT_DIRECTION_NONE != attr.second) { attributes->SetString( diff --git a/libcef/browser/osr/osr_accessibility_util.h b/libcef/browser/osr/osr_accessibility_util.h index 677710381..cdae4e13f 100644 --- a/libcef/browser/osr/osr_accessibility_util.h +++ b/libcef/browser/osr/osr_accessibility_util.h @@ -12,7 +12,7 @@ namespace content { struct AXEventNotificationDetails; struct AXLocationChangeNotificationDetails; -} +} // namespace content namespace osr_accessibility_util { diff --git a/libcef/browser/osr/render_widget_host_view_osr.cc b/libcef/browser/osr/render_widget_host_view_osr.cc index 0cfac6d96..35ac101be 100644 --- a/libcef/browser/osr/render_widget_host_view_osr.cc +++ b/libcef/browser/osr/render_widget_host_view_osr.cc @@ -20,7 +20,7 @@ #include "cc/base/switches.h" #include "cc/output/copy_output_request.h" #include "cc/scheduler/delay_based_time_source.h" -#include "components/viz/display_compositor/gl_helper.h" +#include "components/viz/common/gl_helper.h" #include "content/browser/bad_message.h" #include "content/browser/compositor/image_transport_factory.h" #include "content/browser/frame_host/render_widget_host_view_guest.h" @@ -187,7 +187,7 @@ class CefCopyFrameGenerator { uint8_t* pixels = static_cast(bitmap_->getPixels()); - cc::TextureMailbox texture_mailbox; + viz::TextureMailbox texture_mailbox; std::unique_ptr release_callback; result->TakeTexture(&texture_mailbox, &release_callback); DCHECK(texture_mailbox.IsTexture()); @@ -398,7 +398,8 @@ CefRenderWidgetHostViewOSR::CefRenderWidgetHostViewOSR( compositor_.reset( new ui::Compositor(context_factory_private->AllocateFrameSinkId(), content::GetContextFactory(), context_factory_private, - base::ThreadTaskRunnerHandle::Get())); + base::ThreadTaskRunnerHandle::Get(), + false /* enable_surface_synchronization */)); compositor_->SetAcceleratedWidget(compositor_widget_); compositor_->SetDelegate(this); compositor_->SetRootLayer(root_layer_.get()); @@ -571,7 +572,7 @@ bool CefRenderWidgetHostViewOSR::LockMouse() { void CefRenderWidgetHostViewOSR::UnlockMouse() {} void CefRenderWidgetHostViewOSR::DidCreateNewRendererCompositorFrameSink( - cc::mojom::MojoCompositorFrameSinkClient* renderer_compositor_frame_sink) { + cc::mojom::CompositorFrameSinkClient* renderer_compositor_frame_sink) { renderer_compositor_frame_sink_ = renderer_compositor_frame_sink; if (GetDelegatedFrameHost()) { GetDelegatedFrameHost()->DidCreateNewRendererCompositorFrameSink( @@ -580,7 +581,7 @@ void CefRenderWidgetHostViewOSR::DidCreateNewRendererCompositorFrameSink( } void CefRenderWidgetHostViewOSR::SubmitCompositorFrame( - const cc::LocalSurfaceId& local_surface_id, + const viz::LocalSurfaceId& local_surface_id, cc::CompositorFrame frame) { TRACE_EVENT0("libcef", "CefRenderWidgetHostViewOSR::OnSwapCompositorFrame"); @@ -842,7 +843,7 @@ gfx::Rect CefRenderWidgetHostViewOSR::GetBoundsInRootWindow() { browser_impl_->client()->GetRenderHandler(); if (handler.get() && handler->GetRootScreenRect(browser_impl_.get(), rc)) return gfx::Rect(rc.x, rc.y, rc.width, rc.height); - return gfx::Rect(); + return GetViewBounds(); } content::BrowserAccessibilityManager* @@ -867,10 +868,10 @@ void CefRenderWidgetHostViewOSR::ImeSetComposition( if (!render_widget_host_) return; - std::vector web_underlines; + std::vector web_underlines; web_underlines.reserve(underlines.size()); for (const CefCompositionUnderline& line : underlines) { - web_underlines.push_back(blink::WebCompositionUnderline( + web_underlines.push_back(ui::CompositionUnderline( line.range.from, line.range.to, line.color, line.thick ? true : false, line.background_color)); } @@ -892,9 +893,9 @@ void CefRenderWidgetHostViewOSR::ImeCommitText( return; gfx::Range range(replacement_range.from, replacement_range.to); - render_widget_host_->ImeCommitText( - text, std::vector(), range, - relative_cursor_pos); + render_widget_host_->ImeCommitText(text, + std::vector(), + range, relative_cursor_pos); // Stop Monitoring for composition updates after we are done. RequestImeCompositionUpdate(false); @@ -967,7 +968,7 @@ void CefRenderWidgetHostViewOSR::ProcessGestureEvent( bool CefRenderWidgetHostViewOSR::TransformPointToLocalCoordSpace( const gfx::Point& point, - const cc::SurfaceId& original_surface, + const viz::SurfaceId& original_surface, gfx::Point* transformed_point) { // Transformations use physical pixels rather than DIP, so conversion // is necessary. @@ -1051,7 +1052,7 @@ CefRenderWidgetHostViewOSR::DelegatedFrameHostCreateResizeLock() { return base::MakeUnique(this, desired_size); } -void CefRenderWidgetHostViewOSR::OnBeginFrame(const cc::BeginFrameArgs& args) { +void CefRenderWidgetHostViewOSR::OnBeginFrame() { // TODO(cef): Maybe we can use this method in combination with // OnSetNeedsBeginFrames() instead of using CefBeginFrameTimer. // See https://codereview.chromium.org/1841083007. @@ -1302,7 +1303,7 @@ void CefRenderWidgetHostViewOSR::SendFocusEvent(bool focus) { browser_impl_->CancelContextMenu(); widget->SetActive(false); - widget->Blur(); + widget->LostFocus(); } } @@ -1498,8 +1499,8 @@ void CefRenderWidgetHostViewOSR::SendBeginFrame(base::TimeTicks frame_time, DCHECK(begin_frame_args.IsValid()); begin_frame_number_++; - render_widget_host_->Send(new ViewMsg_BeginFrame( - render_widget_host_->GetRoutingID(), begin_frame_args)); + if (renderer_compositor_frame_sink_) + renderer_compositor_frame_sink_->OnBeginFrame(begin_frame_args); } void CefRenderWidgetHostViewOSR::CancelWidget() { @@ -1621,7 +1622,7 @@ void CefRenderWidgetHostViewOSR::ImeCompositionRangeChanged( } } -cc::FrameSinkId CefRenderWidgetHostViewOSR::AllocateFrameSinkId( +viz::FrameSinkId CefRenderWidgetHostViewOSR::AllocateFrameSinkId( bool is_guest_view_hack) { // GuestViews have two RenderWidgetHostViews and so we need to make sure // we don't have FrameSinkId collisions. @@ -1631,10 +1632,10 @@ cc::FrameSinkId CefRenderWidgetHostViewOSR::AllocateFrameSinkId( content::ImageTransportFactory::GetInstance(); return is_guest_view_hack ? factory->GetContextFactoryPrivate()->AllocateFrameSinkId() - : cc::FrameSinkId(base::checked_cast( - render_widget_host_->GetProcess()->GetID()), - base::checked_cast( - render_widget_host_->GetRoutingID())); + : viz::FrameSinkId(base::checked_cast( + render_widget_host_->GetProcess()->GetID()), + base::checked_cast( + render_widget_host_->GetRoutingID())); } void CefRenderWidgetHostViewOSR::UpdateBackgroundColorFromRenderer( diff --git a/libcef/browser/osr/render_widget_host_view_osr.h b/libcef/browser/osr/render_widget_host_view_osr.h index a7ff243e5..103158d92 100644 --- a/libcef/browser/osr/render_widget_host_view_osr.h +++ b/libcef/browser/osr/render_widget_host_view_osr.h @@ -38,7 +38,7 @@ class RenderWidgetHost; class RenderWidgetHostImpl; class RenderWidgetHostViewGuest; class BackingStore; -} +} // namespace content class CefBeginFrameTimer; class CefBrowserHostImpl; @@ -85,7 +85,7 @@ class MacHelper; class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase, public ui::CompositorDelegate #if !defined(OS_MACOSX) - , + , public content::DelegatedFrameHostClient, public content::CompositorResizeLockClient #endif @@ -129,9 +129,9 @@ class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase, // RenderWidgetHostViewBase implementation. void DidCreateNewRendererCompositorFrameSink( - cc::mojom::MojoCompositorFrameSinkClient* renderer_compositor_frame_sink) + cc::mojom::CompositorFrameSinkClient* renderer_compositor_frame_sink) override; - void SubmitCompositorFrame(const cc::LocalSurfaceId& local_surface_id, + void SubmitCompositorFrame(const viz::LocalSurfaceId& local_surface_id, cc::CompositorFrame frame) override; void ClearCompositorFrame() override; void InitAsPopup(content::RenderWidgetHostView* parent_host_view, @@ -146,7 +146,6 @@ class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase, int error_code) override; void Destroy() override; void SetTooltipText(const base::string16& tooltip_text) override; - void OnSetNeedsFlushInput() override {} gfx::Size GetRequestedRendererSize() const override; gfx::Size GetPhysicalBackingSize() const override; @@ -189,7 +188,7 @@ class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase, void ProcessGestureEvent(const blink::WebGestureEvent& event, const ui::LatencyInfo& latency) override; bool TransformPointToLocalCoordSpace(const gfx::Point& point, - const cc::SurfaceId& original_surface, + const viz::SurfaceId& original_surface, gfx::Point* transformed_point) override; bool TransformPointToCoordSpaceForView( const gfx::Point& point, @@ -209,7 +208,7 @@ class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase, bool DelegatedFrameCanCreateResizeLock() const override; std::unique_ptr DelegatedFrameHostCreateResizeLock() override; - void OnBeginFrame(const cc::BeginFrameArgs& args) override; + void OnBeginFrame() override; bool IsAutoResizeEnabled() const override; // CompositorResizeLockClient implementation. @@ -298,7 +297,7 @@ class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase, void RequestImeCompositionUpdate(bool start_monitoring); - cc::FrameSinkId AllocateFrameSinkId(bool is_guest_view_hack); + viz::FrameSinkId AllocateFrameSinkId(bool is_guest_view_hack); // Applies background color without notifying the RenderWidget about // opaqueness changes. @@ -378,7 +377,7 @@ class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase, gfx::Vector2dF last_scroll_offset_; bool is_scroll_offset_changed_pending_; - cc::mojom::MojoCompositorFrameSinkClient* renderer_compositor_frame_sink_ = + cc::mojom::CompositorFrameSinkClient* renderer_compositor_frame_sink_ = nullptr; base::WeakPtrFactory weak_ptr_factory_; diff --git a/libcef/browser/osr/render_widget_host_view_osr_mac.mm b/libcef/browser/osr/render_widget_host_view_osr_mac.mm index d61d69198..9e77a4442 100644 --- a/libcef/browser/osr/render_widget_host_view_osr_mac.mm +++ b/libcef/browser/osr/render_widget_host_view_osr_mac.mm @@ -44,11 +44,7 @@ class MacHelper : public content::BrowserCompositorMacClient, return color; } - void BrowserCompositorMacSendBeginFrame( - const cc::BeginFrameArgs& args) override { - view_->render_widget_host()->Send(new ViewMsg_BeginFrame( - view_->render_widget_host()->GetRoutingID(), args)); - } + void BrowserCompositorMacOnBeginFrame() override {} // AcceleratedWidgetMacNSView methods: diff --git a/libcef/browser/osr/web_contents_view_osr.cc b/libcef/browser/osr/web_contents_view_osr.cc index 405fcc61c..ef51cb54c 100644 --- a/libcef/browser/osr/web_contents_view_osr.cc +++ b/libcef/browser/osr/web_contents_view_osr.cc @@ -63,12 +63,23 @@ void CefWebContentsViewOSR::StoreFocus() {} void CefWebContentsViewOSR::RestoreFocus() {} -void CefWebContentsViewOSR::GotFocus() { +void CefWebContentsViewOSR::GotFocus( + content::RenderWidgetHostImpl* render_widget_host) { if (web_contents_) { content::WebContentsImpl* web_contents_impl = static_cast(web_contents_); if (web_contents_impl) - web_contents_impl->NotifyWebContentsFocused(); + web_contents_impl->NotifyWebContentsFocused(render_widget_host); + } +} + +void CefWebContentsViewOSR::LostFocus( + content::RenderWidgetHostImpl* render_widget_host) { + if (web_contents_) { + content::WebContentsImpl* web_contents_impl = + static_cast(web_contents_); + if (web_contents_impl) + web_contents_impl->NotifyWebContentsLostFocus(render_widget_host); } } diff --git a/libcef/browser/osr/web_contents_view_osr.h b/libcef/browser/osr/web_contents_view_osr.h index 39abd5041..4f7beb07d 100644 --- a/libcef/browser/osr/web_contents_view_osr.h +++ b/libcef/browser/osr/web_contents_view_osr.h @@ -14,7 +14,7 @@ namespace content { class BrowserPluginGuest; class WebContents; class WebContentsViewDelegate; -} +} // namespace content class CefBrowserHostImpl; class CefRenderWidgetHostViewOSR; @@ -69,7 +69,10 @@ class CefWebContentsViewOSR : public content::WebContentsView, const content::DragEventSourceInfo& event_info, content::RenderWidgetHostImpl* source_rwh) override; void UpdateDragCursor(blink::WebDragOperation operation) override; - virtual void GotFocus() override; + virtual void GotFocus( + content::RenderWidgetHostImpl* render_widget_host) override; + virtual void LostFocus( + content::RenderWidgetHostImpl* render_widget_host) override; virtual void TakeFocus(bool reverse) override; private: diff --git a/libcef/browser/plugins/plugin_info_message_filter.cc b/libcef/browser/plugins/plugin_info_message_filter.cc index 6a7518a80..0237b2e44 100644 --- a/libcef/browser/plugins/plugin_info_message_filter.cc +++ b/libcef/browser/plugins/plugin_info_message_filter.cc @@ -22,7 +22,7 @@ #include "chrome/browser/plugins/plugins_field_trial.h" #include "chrome/common/features.h" #include "chrome/common/pref_names.h" -#include "components/content_settings/core/browser/content_settings_utils.h" +#include "components/content_settings/core/common/content_settings_utils.h" #include "components/keyed_service/content/browser_context_keyed_service_shutdown_notifier_factory.h" #include "content/public/browser/browser_context.h" #include "content/public/browser/browser_thread.h" diff --git a/libcef/browser/prefs/pref_store.cc b/libcef/browser/prefs/pref_store.cc index d76cfdda7..235857f96 100644 --- a/libcef/browser/prefs/pref_store.cc +++ b/libcef/browser/prefs/pref_store.cc @@ -94,8 +94,9 @@ void CefPrefStore::ReadPrefsAsync(ReadErrorDelegate* error_delegate) { NotifyInitializationCompleted(); } -void CefPrefStore::CommitPendingWrite() { +void CefPrefStore::CommitPendingWrite(base::OnceClosure done_callback) { committed_ = true; + PersistentPrefStore::CommitPendingWrite(std::move(done_callback)); } void CefPrefStore::SchedulePendingLossyWrites() {} diff --git a/libcef/browser/prefs/pref_store.h b/libcef/browser/prefs/pref_store.h index fde0c269d..d12d5347c 100644 --- a/libcef/browser/prefs/pref_store.h +++ b/libcef/browser/prefs/pref_store.h @@ -45,7 +45,7 @@ class CefPrefStore : public PersistentPrefStore { PrefReadError GetReadError() const override; PersistentPrefStore::PrefReadError ReadPrefs() override; void ReadPrefsAsync(ReadErrorDelegate* error_delegate) override; - void CommitPendingWrite() override; + virtual void CommitPendingWrite(base::OnceClosure done_callback) override; void SchedulePendingLossyWrites() override; // Marks the store as having completed initialization. diff --git a/libcef/browser/printing/print_view_manager_base.cc b/libcef/browser/printing/print_view_manager_base.cc index 7c505acf4..ed3b539da 100644 --- a/libcef/browser/printing/print_view_manager_base.cc +++ b/libcef/browser/printing/print_view_manager_base.cc @@ -173,8 +173,11 @@ void CefPrintViewManagerBase::OnDidPrintPage( document->DebugDumpData(bytes.get(), FILE_PATH_LITERAL(".pdf")); const auto& settings = document->settings(); - if ((settings.printer_is_ps2() || settings.printer_is_ps3()) && - !base::FeatureList::IsEnabled(features::kDisablePostScriptPrinting)) { + if (settings.printer_is_textonly()) { + print_job_->StartPdfToTextConversion(bytes, params.page_size); + } else if ((settings.printer_is_ps2() || settings.printer_is_ps3()) && + !base::FeatureList::IsEnabled( + features::kDisablePostScriptPrinting)) { print_job_->StartPdfToPostScriptConversion(bytes, params.content_area, params.physical_offsets, settings.printer_is_ps2()); diff --git a/libcef/browser/resource_dispatcher_host_delegate.cc b/libcef/browser/resource_dispatcher_host_delegate.cc index 99972a1ea..2d20ac229 100644 --- a/libcef/browser/resource_dispatcher_host_delegate.cc +++ b/libcef/browser/resource_dispatcher_host_delegate.cc @@ -16,7 +16,6 @@ #include "libcef/common/extensions/extensions_util.h" #include "base/guid.h" -#include "base/memory/scoped_vector.h" #include "build/build_config.h" #include "chrome/browser/extensions/api/streams_private/streams_private_api.h" #include "content/public/browser/plugin_service.h" diff --git a/libcef/browser/speech_recognition_manager_delegate.cc b/libcef/browser/speech_recognition_manager_delegate.cc index 2ea3ddd7e..8ebeba2a4 100644 --- a/libcef/browser/speech_recognition_manager_delegate.cc +++ b/libcef/browser/speech_recognition_manager_delegate.cc @@ -191,7 +191,7 @@ void CefSpeechRecognitionManagerDelegate::OnRecognitionEnd(int session_id) {} void CefSpeechRecognitionManagerDelegate::CheckRecognitionIsAllowed( int session_id, - base::Callback callback) { + base::OnceCallback callback) { DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); const content::SpeechRecognitionSessionContext& context = @@ -200,7 +200,8 @@ void CefSpeechRecognitionManagerDelegate::CheckRecognitionIsAllowed( // Make sure that initiators properly set the |render_process_id| field. DCHECK_NE(context.render_process_id, 0); - callback.Run(false, true); + BrowserThread::PostTask(BrowserThread::IO, FROM_HERE, + base::BindOnce(std::move(callback), false, true)); } content::SpeechRecognitionEventListener* diff --git a/libcef/browser/speech_recognition_manager_delegate.h b/libcef/browser/speech_recognition_manager_delegate.h index 5b4ed330b..f2e9ce662 100644 --- a/libcef/browser/speech_recognition_manager_delegate.h +++ b/libcef/browser/speech_recognition_manager_delegate.h @@ -42,7 +42,8 @@ class CefSpeechRecognitionManagerDelegate // SpeechRecognitionManagerDelegate methods. void CheckRecognitionIsAllowed( int session_id, - base::Callback callback) override; + base::OnceCallback callback) + override; content::SpeechRecognitionEventListener* GetEventListener() override; bool FilterProfanities(int render_process_id) override; diff --git a/libcef/browser/storage_partition_proxy.cc b/libcef/browser/storage_partition_proxy.cc index 7517edd92..13029312a 100644 --- a/libcef/browser/storage_partition_proxy.cc +++ b/libcef/browser/storage_partition_proxy.cc @@ -103,6 +103,15 @@ CefStoragePartitionProxy::GetBluetoothAllowedDevicesMap() { return parent_->GetBluetoothAllowedDevicesMap(); } +content::BlobURLLoaderFactory* +CefStoragePartitionProxy::GetBlobURLLoaderFactory() { + return parent_->GetBlobURLLoaderFactory(); +} + +content::BlobRegistryWrapper* CefStoragePartitionProxy::GetBlobRegistry() { + return parent_->GetBlobRegistry(); +} + void CefStoragePartitionProxy::ClearDataForOrigin( uint32_t remove_mask, uint32_t quota_storage_remove_mask, diff --git a/libcef/browser/storage_partition_proxy.h b/libcef/browser/storage_partition_proxy.h index b88cf0882..e8d1330c6 100644 --- a/libcef/browser/storage_partition_proxy.h +++ b/libcef/browser/storage_partition_proxy.h @@ -42,6 +42,8 @@ class CefStoragePartitionProxy : public content::StoragePartition { content::PaymentAppContextImpl* GetPaymentAppContext() override; content::BroadcastChannelProvider* GetBroadcastChannelProvider() override; content::BluetoothAllowedDevicesMap* GetBluetoothAllowedDevicesMap() override; + content::BlobURLLoaderFactory* GetBlobURLLoaderFactory() override; + content::BlobRegistryWrapper* GetBlobRegistry() override; void ClearDataForOrigin(uint32_t remove_mask, uint32_t quota_storage_remove_mask, const GURL& storage_origin, diff --git a/libcef/browser/views/box_layout_impl.cc b/libcef/browser/views/box_layout_impl.cc index 62f58dc5a..a588d5fda 100644 --- a/libcef/browser/views/box_layout_impl.cc +++ b/libcef/browser/views/box_layout_impl.cc @@ -53,12 +53,12 @@ CefBoxLayoutImpl::CefBoxLayoutImpl(const CefBoxLayoutSettings& settings) : settings_(settings) {} views::BoxLayout* CefBoxLayoutImpl::CreateLayout() { - views::BoxLayout* layout = - new views::BoxLayout(settings_.horizontal ? views::BoxLayout::kHorizontal - : views::BoxLayout::kVertical, - settings_.inside_border_horizontal_spacing, - settings_.inside_border_vertical_spacing, - settings_.between_child_spacing); + views::BoxLayout* layout = new views::BoxLayout( + settings_.horizontal ? views::BoxLayout::kHorizontal + : views::BoxLayout::kVertical, + gfx::Insets(settings_.inside_border_vertical_spacing, + settings_.inside_border_horizontal_spacing), + settings_.between_child_spacing); layout->set_main_axis_alignment( static_cast( settings_.main_axis_alignment)); diff --git a/libcef/browser/views/view_impl.h b/libcef/browser/views/view_impl.h index c9e9e223f..de6faac47 100644 --- a/libcef/browser/views/view_impl.h +++ b/libcef/browser/views/view_impl.h @@ -653,8 +653,7 @@ CEF_VIEW_IMPL_T void CEF_VIEW_IMPL_D::RequestFocus() { CEF_VIEW_IMPL_T void CEF_VIEW_IMPL_D::SetBackgroundColor(cef_color_t color) { CEF_REQUIRE_VALID_RETURN_VOID(); - content_view()->set_background( - views::Background::CreateSolidBackground(color)); + content_view()->SetBackground(views::CreateSolidBackground(color)); } CEF_VIEW_IMPL_T cef_color_t CEF_VIEW_IMPL_D::GetBackgroundColor() { diff --git a/libcef/browser/views/view_view.h b/libcef/browser/views/view_view.h index 3610c2247..ab103119f 100644 --- a/libcef/browser/views/view_view.h +++ b/libcef/browser/views/view_view.h @@ -43,8 +43,8 @@ CEF_VIEW_VIEW_T class CefViewView : public ViewsViewClass { // views::View-derived methods here. virtual void Initialize() { // Use our defaults instead of the Views framework defaults. - ParentClass::set_background(views::Background::CreateSolidBackground( - view_util::kDefaultBackgroundColor)); + ParentClass::SetBackground( + views::CreateSolidBackground(view_util::kDefaultBackgroundColor)); } // Returns the CefViewDelegate-derived delegate associated with this view. @@ -63,7 +63,7 @@ CEF_VIEW_VIEW_T class CefViewView : public ViewsViewClass { } // views::View methods: - gfx::Size GetPreferredSize() const override; + gfx::Size CalculatePreferredSize() const override; gfx::Size GetMinimumSize() const override; gfx::Size GetMaximumSize() const override; int GetHeightForWidth(int w) const override; @@ -87,7 +87,7 @@ CEF_VIEW_VIEW_T class CefViewView : public ViewsViewClass { CefViewDelegateClass* cef_delegate_; }; -CEF_VIEW_VIEW_T gfx::Size CEF_VIEW_VIEW_D::GetPreferredSize() const { +CEF_VIEW_VIEW_T gfx::Size CEF_VIEW_VIEW_D::CalculatePreferredSize() const { gfx::Size result; if (cef_delegate()) { CefSize cef_size = cef_delegate()->GetPreferredSize(GetCefView()); @@ -95,7 +95,7 @@ CEF_VIEW_VIEW_T gfx::Size CEF_VIEW_VIEW_D::GetPreferredSize() const { result = gfx::Size(cef_size.width, cef_size.height); } if (result.IsEmpty()) - result = ParentClass::GetPreferredSize(); + result = ParentClass::CalculatePreferredSize(); if (result.IsEmpty()) { // Some layouts like BoxLayout expect the preferred size to be non-empty. // The user may have set the size explicitly. Therefore return the current @@ -142,7 +142,7 @@ CEF_VIEW_VIEW_T int CEF_VIEW_VIEW_D::GetHeightForWidth(int w) const { // Some layouts like FillLayout will ignore the preferred size if this view // has no children. We want to use the preferred size if not otherwise // specified. - result = GetPreferredSize().height(); + result = ParentClass::GetPreferredSize().height(); } return result; } diff --git a/libcef/browser/views/window_view.cc b/libcef/browser/views/window_view.cc index 094536c69..b332cf832 100644 --- a/libcef/browser/views/window_view.cc +++ b/libcef/browser/views/window_view.cc @@ -176,7 +176,7 @@ class CaptionlessFrameView : public views::NonClientFrameView { client_view_bounds_.SetRect(0, 0, width(), height()); } - gfx::Size GetPreferredSize() const override { + gfx::Size CalculatePreferredSize() const override { return widget_->non_client_view() ->GetWindowBoundsForClientBounds( gfx::Rect(widget_->client_view()->GetPreferredSize())) diff --git a/libcef/browser/x509_certificate_impl.cc b/libcef/browser/x509_certificate_impl.cc index 2da57b856..e95b58184 100644 --- a/libcef/browser/x509_certificate_impl.cc +++ b/libcef/browser/x509_certificate_impl.cc @@ -3,9 +3,12 @@ // can be found in the LICENSE file. #include "libcef/browser/x509_certificate_impl.h" + #include "libcef/browser/x509_cert_principal_impl.h" #include "libcef/common/time_util.h" +#include "net/ssl/ssl_private_key.h" + namespace { CefRefPtr EncodeCertificate( @@ -24,6 +27,10 @@ CefRefPtr EncodeCertificate( } // namespace +CefX509CertificateImpl::CefX509CertificateImpl( + std::unique_ptr identity) + : identity_(std::move(identity)), cert_(identity_->certificate()) {} + CefX509CertificateImpl::CefX509CertificateImpl( scoped_refptr cert) : cert_(cert) {} @@ -92,6 +99,15 @@ size_t CefX509CertificateImpl::GetIssuerChainSize() { return 0; } +void CefX509CertificateImpl::AcquirePrivateKey( + const base::Callback)>& + private_key_callback) { + if (identity_) + identity_->AcquirePrivateKey(private_key_callback); + else + private_key_callback.Run(nullptr); +} + void CefX509CertificateImpl::GetEncodedIssuerChain( CefX509Certificate::IssuerChainBinaryList& chain, bool der) { diff --git a/libcef/browser/x509_certificate_impl.h b/libcef/browser/x509_certificate_impl.h index b7dd48391..d5a7ad683 100644 --- a/libcef/browser/x509_certificate_impl.h +++ b/libcef/browser/x509_certificate_impl.h @@ -8,13 +8,19 @@ #include "include/cef_x509_certificate.h" -#include "net/cert/x509_certificate.h" +#include + +#include "net/ssl/client_cert_identity.h" // CefX509Certificate implementation class CefX509CertificateImpl : public CefX509Certificate { public: explicit CefX509CertificateImpl(scoped_refptr cert); + // Used with CefContentBrowserClient::SelectClientCertificate only. + explicit CefX509CertificateImpl( + std::unique_ptr identity); + // CefX509Certificate methods. CefRefPtr GetSubject() override; CefRefPtr GetIssuer() override; @@ -28,10 +34,14 @@ class CefX509CertificateImpl : public CefX509Certificate { void GetPEMEncodedIssuerChain(IssuerChainBinaryList& chain) override; scoped_refptr GetInternalCertObject() { return cert_; } + void AcquirePrivateKey( + const base::Callback)>& + private_key_callback); private: void GetEncodedIssuerChain(IssuerChainBinaryList& chain, bool der); + std::unique_ptr identity_; scoped_refptr cert_; IssuerChainBinaryList pem_encoded_issuer_chain_; IssuerChainBinaryList der_encoded_issuer_chain_; diff --git a/libcef/common/cef_messages.h b/libcef/common/cef_messages.h index 7eec6b8d1..5bd23b8eb 100644 --- a/libcef/common/cef_messages.h +++ b/libcef/common/cef_messages.h @@ -123,7 +123,7 @@ IPC_STRUCT_BEGIN(CefMsg_LoadRequest_Params) // The URL to send in the "Referer" header field. Can be empty if there is // no referrer. IPC_STRUCT_MEMBER(GURL, referrer) - // One of the blink::WebReferrerPolicy values. + // One of the cef_referrer_policy_t values. IPC_STRUCT_MEMBER(int, referrer_policy) // Identifies the frame within the RenderView that sent the request. diff --git a/libcef/common/extensions/api/browser_manifest_overlay.json b/libcef/common/extensions/api/browser_manifest_overlay.json index 6af52384e..3ec4cfa42 100644 --- a/libcef/common/extensions/api/browser_manifest_overlay.json +++ b/libcef/common/extensions/api/browser_manifest_overlay.json @@ -2,9 +2,21 @@ "name": "content_browser", "display_name": "CEF", "interface_provider_specs": { + "service_manager:connector": { + "provides": { + "renderer": [ + "blink::mojom::BudgetService", + "metrics::mojom::LeakDetector", + "mojom::ModuleEventSink", + "spellcheck::mojom::SpellCheckHost", + "startup_metric_utils::mojom::StartupMetricHost" + ] + } + }, "navigation:frame": { "provides": { "renderer": [ + "blink::mojom::BudgetService", "extensions::KeepAlive", "extensions::mime_handler::MimeHandlerService" ] diff --git a/libcef/common/request_impl.cc b/libcef/common/request_impl.cc index 0a53ef15f..ee674e82a 100644 --- a/libcef/common/request_impl.cc +++ b/libcef/common/request_impl.cc @@ -90,42 +90,6 @@ class FileElementReader : public net::UploadFileElementReader { DISALLOW_COPY_AND_ASSIGN(FileElementReader); }; -// GetURLRequestReferrerPolicy() and GetURLRequestReferrer() are based on -// SetReferrerForRequest() from -// content/browser/loader/resource_dispatcher_host_impl.cc - -net::URLRequest::ReferrerPolicy GetURLRequestReferrerPolicy( - cef_referrer_policy_t policy) { - base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); - net::URLRequest::ReferrerPolicy net_referrer_policy = - net::URLRequest::CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE; - switch (static_cast(policy)) { - case blink::kWebReferrerPolicyAlways: - case blink::kWebReferrerPolicyNever: - case blink::kWebReferrerPolicyOrigin: - net_referrer_policy = net::URLRequest::NEVER_CLEAR_REFERRER; - break; - case blink::kWebReferrerPolicyNoReferrerWhenDowngrade: - net_referrer_policy = - net::URLRequest::CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE; - break; - case blink::kWebReferrerPolicyOriginWhenCrossOrigin: - net_referrer_policy = - net::URLRequest::ORIGIN_ONLY_ON_TRANSITION_CROSS_ORIGIN; - break; - case blink::kWebReferrerPolicyDefault: - default: - net_referrer_policy = - command_line->HasSwitch(switches::kReducedReferrerGranularity) - ? net::URLRequest:: - REDUCE_REFERRER_GRANULARITY_ON_TRANSITION_CROSS_ORIGIN - : net::URLRequest:: - CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE; - break; - } - return net_referrer_policy; -} - std::string GetURLRequestReferrer(const GURL& referrer_url) { base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); if (!referrer_url.is_valid() || @@ -251,6 +215,11 @@ CefRefPtr CefRequest::Create() { // CefRequestImpl ------------------------------------------------------------- CefRequestImpl::CefRequestImpl() : read_only_(false), track_changes_(false) { + // Verify that our enum matches Chromium's values. + static_assert( + REFERRER_POLICY_LAST_VALUE == net::URLRequest::MAX_REFERRER_POLICY, + "enum mismatch"); + base::AutoLock lock_scope(lock_); Reset(); } @@ -422,30 +391,8 @@ void CefRequestImpl::Set(net::URLRequest* request) { // instance WebCore::FrameLoader::HideReferrer. if (referrer.is_valid()) { referrer_url_ = referrer; - switch (request->referrer_policy()) { - case net::URLRequest:: - CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE: - referrer_policy_ = REFERRER_POLICY_NO_REFERRER_WHEN_DOWNGRADE; - break; - case net::URLRequest:: - REDUCE_REFERRER_GRANULARITY_ON_TRANSITION_CROSS_ORIGIN: - referrer_policy_ = REFERRER_POLICY_ORIGIN_WHEN_CROSS_ORIGIN; - break; - case net::URLRequest::ORIGIN_ONLY_ON_TRANSITION_CROSS_ORIGIN: - referrer_policy_ = REFERRER_POLICY_ORIGIN_WHEN_CROSS_ORIGIN; - break; - case net::URLRequest::NEVER_CLEAR_REFERRER: - referrer_policy_ = REFERRER_POLICY_ALWAYS; - break; - case net::URLRequest::ORIGIN: - referrer_policy_ = REFERRER_POLICY_ORIGIN; - break; - case net::URLRequest::NO_REFERRER: - referrer_policy_ = REFERRER_POLICY_NEVER; - break; - case net::URLRequest::MAX_REFERRER_POLICY: - break; - } + referrer_policy_ = + static_cast(request->referrer_policy()); } // Transfer request headers. @@ -477,7 +424,8 @@ void CefRequestImpl::Get(net::URLRequest* request, bool changed_only) const { if (ShouldSet(kChangedReferrer, changed_only)) { request->SetReferrer(GetURLRequestReferrer(referrer_url_)); - request->set_referrer_policy(GetURLRequestReferrerPolicy(referrer_policy_)); + request->set_referrer_policy( + static_cast(referrer_policy_)); } if (ShouldSet(kChangedHeaderMap, changed_only)) { @@ -516,7 +464,7 @@ void CefRequestImpl::Set( content::Referrer::SanitizeForRequest(params.url(), params.referrer()); referrer_url_ = sanitized_referrer.url; referrer_policy_ = - static_cast(sanitized_referrer.policy); + BlinkReferrerPolicyToNetReferrerPolicy(sanitized_referrer.policy); resource_type_ = is_main_frame ? RT_MAIN_FRAME : RT_SUB_FRAME; transition_type_ = @@ -536,7 +484,7 @@ void CefRequestImpl::Set(const blink::WebURLRequest& request) { ::GetHeaderMap(request, headermap_, referrer_url_); referrer_policy_ = - static_cast(request.GetReferrerPolicy()); + BlinkReferrerPolicyToNetReferrerPolicy(request.GetReferrerPolicy()); const blink::WebHTTPBody& body = request.HttpBody(); if (!body.IsNull()) { @@ -565,11 +513,11 @@ void CefRequestImpl::Get(blink::WebURLRequest& request, if (!referrer_url_.is_empty()) { const blink::WebString& referrer = blink::WebSecurityPolicy::GenerateReferrerHeader( - static_cast(referrer_policy_), url_, + NetReferrerPolicyToBlinkReferrerPolicy(referrer_policy_), url_, blink::WebString::FromUTF8(referrer_url_.spec())); if (!referrer.IsEmpty()) { request.SetHTTPReferrer( - referrer, static_cast(referrer_policy_)); + referrer, NetReferrerPolicyToBlinkReferrerPolicy(referrer_policy_)); } } @@ -616,11 +564,14 @@ void CefRequestImpl::Get(const CefMsg_LoadRequest_Params& params, if (params.referrer.is_valid()) { const blink::WebString& referrer = blink::WebSecurityPolicy::GenerateReferrerHeader( - static_cast(params.referrer_policy), + NetReferrerPolicyToBlinkReferrerPolicy( + static_cast(params.referrer_policy)), params.url, blink::WebString::FromUTF8(params.referrer.spec())); if (!referrer.IsEmpty()) { - request.SetHTTPReferrer(referrer, static_cast( - params.referrer_policy)); + request.SetHTTPReferrer( + referrer, + NetReferrerPolicyToBlinkReferrerPolicy( + static_cast(params.referrer_policy))); } } @@ -691,7 +642,7 @@ void CefRequestImpl::Get(CefNavigateParams& params) const { // Referrer policy will be applied later in the request pipeline. params.referrer.url = referrer_url_; params.referrer.policy = - static_cast(referrer_policy_); + NetReferrerPolicyToBlinkReferrerPolicy(referrer_policy_); if (!headermap_.empty()) params.headers = HttpHeaderUtils::GenerateHeaders(headermap_); @@ -712,7 +663,8 @@ void CefRequestImpl::Get(net::URLFetcher& fetcher, if (!referrer_url_.is_empty()) { fetcher.SetReferrer(GetURLRequestReferrer(referrer_url_)); - fetcher.SetReferrerPolicy(GetURLRequestReferrerPolicy(referrer_policy_)); + fetcher.SetReferrerPolicy( + static_cast(referrer_policy_)); } CefRequest::HeaderMap headerMap = headermap_; @@ -826,6 +778,63 @@ uint8_t CefRequestImpl::GetChanges() const { return changes; } +// From content/child/web_url_loader_impl.cc +// static +blink::WebReferrerPolicy CefRequestImpl::NetReferrerPolicyToBlinkReferrerPolicy( + cef_referrer_policy_t net_policy) { + switch (net_policy) { + case REFERRER_POLICY_CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE: + return blink::kWebReferrerPolicyNoReferrerWhenDowngrade; + case REFERRER_POLICY_REDUCE_REFERRER_GRANULARITY_ON_TRANSITION_CROSS_ORIGIN: + return blink:: + kWebReferrerPolicyNoReferrerWhenDowngradeOriginWhenCrossOrigin; + case REFERRER_POLICY_ORIGIN_ONLY_ON_TRANSITION_CROSS_ORIGIN: + return blink::kWebReferrerPolicyOriginWhenCrossOrigin; + case REFERRER_POLICY_NEVER_CLEAR_REFERRER: + return blink::kWebReferrerPolicyAlways; + case REFERRER_POLICY_ORIGIN: + return blink::kWebReferrerPolicyOrigin; + case REFERRER_POLICY_CLEAR_REFERRER_ON_TRANSITION_CROSS_ORIGIN: + return blink::kWebReferrerPolicySameOrigin; + case REFERRER_POLICY_ORIGIN_CLEAR_ON_TRANSITION_FROM_SECURE_TO_INSECURE: + return blink::kWebReferrerPolicyStrictOrigin; + case REFERRER_POLICY_NO_REFERRER: + return blink::kWebReferrerPolicyNever; + case REFERRER_POLICY_LAST_VALUE: + NOTREACHED(); + return blink::kWebReferrerPolicyDefault; + } + NOTREACHED(); + return blink::kWebReferrerPolicyDefault; +} + +// static +cef_referrer_policy_t CefRequestImpl::BlinkReferrerPolicyToNetReferrerPolicy( + blink::WebReferrerPolicy blink_policy) { + switch (blink_policy) { + case blink::kWebReferrerPolicyNoReferrerWhenDowngrade: + return REFERRER_POLICY_CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE; + case blink::kWebReferrerPolicyNoReferrerWhenDowngradeOriginWhenCrossOrigin: + return REFERRER_POLICY_REDUCE_REFERRER_GRANULARITY_ON_TRANSITION_CROSS_ORIGIN; + case blink::kWebReferrerPolicyOriginWhenCrossOrigin: + return REFERRER_POLICY_ORIGIN_ONLY_ON_TRANSITION_CROSS_ORIGIN; + case blink::kWebReferrerPolicyAlways: + return REFERRER_POLICY_NEVER_CLEAR_REFERRER; + case blink::kWebReferrerPolicyOrigin: + return REFERRER_POLICY_ORIGIN; + case blink::kWebReferrerPolicySameOrigin: + return REFERRER_POLICY_CLEAR_REFERRER_ON_TRANSITION_CROSS_ORIGIN; + case blink::kWebReferrerPolicyStrictOrigin: + return REFERRER_POLICY_ORIGIN_CLEAR_ON_TRANSITION_FROM_SECURE_TO_INSECURE; + case blink::kWebReferrerPolicyNever: + return REFERRER_POLICY_NO_REFERRER; + case blink::kWebReferrerPolicyDefault: + return REFERRER_POLICY_DEFAULT; + } + NOTREACHED(); + return REFERRER_POLICY_DEFAULT; +} + void CefRequestImpl::Changed(uint8_t changes) { lock_.AssertAcquired(); if (track_changes_) diff --git a/libcef/common/request_impl.h b/libcef/common/request_impl.h index 9f5b59fc5..ae2d303e3 100644 --- a/libcef/common/request_impl.h +++ b/libcef/common/request_impl.h @@ -14,6 +14,7 @@ #include "base/synchronization/lock.h" #include "third_party/WebKit/public/platform/WebHTTPBody.h" +#include "third_party/WebKit/public/platform/WebReferrerPolicy.h" #include "url/gurl.h" namespace navigation_interception { @@ -28,11 +29,11 @@ class UploadElement; class UploadElementReader; class URLFetcher; class URLRequest; -}; +}; // namespace net namespace blink { class WebURLRequest; -} +} // namespace blink struct CefMsg_LoadRequest_Params; struct CefNavigateParams; @@ -118,6 +119,11 @@ class CefRequestImpl : public CefRequest { void SetTrackChanges(bool track_changes); uint8_t GetChanges() const; + static blink::WebReferrerPolicy NetReferrerPolicyToBlinkReferrerPolicy( + cef_referrer_policy_t net_policy); + static cef_referrer_policy_t BlinkReferrerPolicyToNetReferrerPolicy( + blink::WebReferrerPolicy blink_policy); + private: void Changed(uint8_t changes); bool ShouldSet(uint8_t changes, bool changed_only) const; diff --git a/libcef/common/response_manager.cc b/libcef/common/response_manager.cc index b963b26ea..f21d0cba5 100644 --- a/libcef/common/response_manager.cc +++ b/libcef/common/response_manager.cc @@ -10,12 +10,12 @@ CefResponseManager::CefResponseManager() : next_request_id_(0) {} int CefResponseManager::GetNextRequestId() { - DCHECK(CalledOnValidThread()); + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); return ++next_request_id_; } int CefResponseManager::RegisterHandler(CefRefPtr handler) { - DCHECK(CalledOnValidThread()); + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); int request_id = GetNextRequestId(); TRACE_EVENT_ASYNC_BEGIN1("libcef", "CefResponseManager::Handler", request_id, "request_id", request_id); @@ -24,7 +24,7 @@ int CefResponseManager::RegisterHandler(CefRefPtr handler) { } bool CefResponseManager::RunHandler(const Cef_Response_Params& params) { - DCHECK(CalledOnValidThread()); + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_GT(params.request_id, 0); HandlerMap::iterator it = handlers_.find(params.request_id); if (it != handlers_.end()) { @@ -42,12 +42,12 @@ bool CefResponseManager::RunHandler(const Cef_Response_Params& params) { void CefResponseManager::RegisterAckHandler(int request_id, CefRefPtr handler) { - DCHECK(CalledOnValidThread()); + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); ack_handlers_.insert(std::make_pair(request_id, handler)); } bool CefResponseManager::RunAckHandler(int request_id) { - DCHECK(CalledOnValidThread()); + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_GT(request_id, 0); AckHandlerMap::iterator it = ack_handlers_.find(request_id); if (it != ack_handlers_.end()) { diff --git a/libcef/common/response_manager.h b/libcef/common/response_manager.h index 9ee29af09..3e47c76ae 100644 --- a/libcef/common/response_manager.h +++ b/libcef/common/response_manager.h @@ -10,12 +10,12 @@ #include "include/cef_base.h" -#include "base/threading/non_thread_safe.h" +#include "base/sequence_checker.h" struct Cef_Response_Params; // This class is not thread-safe. -class CefResponseManager : base::NonThreadSafe { +class CefResponseManager { public: // Used for handling response messages. class Handler : public virtual CefBaseRefCounted { @@ -59,6 +59,8 @@ class CefResponseManager : base::NonThreadSafe { // Map of unique request ids to AckHandler references. typedef std::map> AckHandlerMap; AckHandlerMap ack_handlers_; + + SEQUENCE_CHECKER(sequence_checker_); }; #endif // CEF_LIBCEF_COMMON_RESPONSE_MANAGER_H_ diff --git a/libcef/common/thread_impl.cc b/libcef/common/thread_impl.cc index 865ee220e..71de26215 100644 --- a/libcef/common/thread_impl.cc +++ b/libcef/common/thread_impl.cc @@ -28,7 +28,7 @@ CefRefPtr CefThread::CreateThread( cef_message_loop_type_t message_loop_type, bool stoppable, cef_com_init_mode_t com_init_mode) { - if (!base::MessageLoop::current()) { + if (!CefTaskRunnerImpl::GetCurrentTaskRunner()) { NOTREACHED() << "called on invalid thread"; return nullptr; } diff --git a/libcef/renderer/browser_impl.cc b/libcef/renderer/browser_impl.cc index a39dda35b..3dbfc6d81 100644 --- a/libcef/renderer/browser_impl.cc +++ b/libcef/renderer/browser_impl.cc @@ -42,6 +42,7 @@ #include "third_party/WebKit/public/web/WebView.h" using blink::WebFrame; +using blink::WebLocalFrame; using blink::WebScriptSource; using blink::WebString; using blink::WebURL; @@ -108,26 +109,35 @@ bool CefBrowserImpl::IsLoading() { void CefBrowserImpl::Reload() { CEF_REQUIRE_RT_RETURN_VOID(); - if (render_view()->GetWebView() && render_view()->GetWebView()->MainFrame()) { - render_view()->GetWebView()->MainFrame()->Reload( - blink::WebFrameLoadType::kReload); + if (render_view()->GetWebView()) { + WebFrame* main_frame = render_view()->GetWebView()->MainFrame(); + if (main_frame && main_frame->IsWebLocalFrame()) { + main_frame->ToWebLocalFrame()->Reload(blink::WebFrameLoadType::kReload); + } } } void CefBrowserImpl::ReloadIgnoreCache() { CEF_REQUIRE_RT_RETURN_VOID(); - if (render_view()->GetWebView() && render_view()->GetWebView()->MainFrame()) { - render_view()->GetWebView()->MainFrame()->Reload( - blink::WebFrameLoadType::kReloadBypassingCache); + if (render_view()->GetWebView()) { + WebFrame* main_frame = render_view()->GetWebView()->MainFrame(); + if (main_frame && main_frame->IsWebLocalFrame()) { + main_frame->ToWebLocalFrame()->Reload( + blink::WebFrameLoadType::kReloadBypassingCache); + } } } void CefBrowserImpl::StopLoad() { CEF_REQUIRE_RT_RETURN_VOID(); - if (render_view()->GetWebView() && render_view()->GetWebView()->MainFrame()) - render_view()->GetWebView()->MainFrame()->StopLoading(); + if (render_view()->GetWebView()) { + WebFrame* main_frame = render_view()->GetWebView()->MainFrame(); + if (main_frame && main_frame->IsWebLocalFrame()) { + main_frame->ToWebLocalFrame()->StopLoading(); + } + } } int CefBrowserImpl::GetIdentifier() { @@ -152,16 +162,24 @@ bool CefBrowserImpl::IsPopup() { bool CefBrowserImpl::HasDocument() { CEF_REQUIRE_RT_RETURN(false); - if (render_view()->GetWebView() && render_view()->GetWebView()->MainFrame()) - return !render_view()->GetWebView()->MainFrame()->GetDocument().IsNull(); + if (render_view()->GetWebView()) { + WebFrame* main_frame = render_view()->GetWebView()->MainFrame(); + if (main_frame && main_frame->IsWebLocalFrame()) { + return !main_frame->ToWebLocalFrame()->GetDocument().IsNull(); + } + } return false; } CefRefPtr CefBrowserImpl::GetMainFrame() { CEF_REQUIRE_RT_RETURN(nullptr); - if (render_view()->GetWebView() && render_view()->GetWebView()->MainFrame()) - return GetWebFrameImpl(render_view()->GetWebView()->MainFrame()).get(); + if (render_view()->GetWebView()) { + WebFrame* main_frame = render_view()->GetWebView()->MainFrame(); + if (main_frame && main_frame->IsWebLocalFrame()) { + return GetWebFrameImpl(main_frame->ToWebLocalFrame()).get(); + } + } return nullptr; } @@ -188,21 +206,24 @@ CefRefPtr CefBrowserImpl::GetFrame(const CefString& name) { if (web_view) { const blink::WebString& frame_name = blink::WebString::FromUTF16(name); // Search by assigned frame name (Frame::name). - WebFrame* frame = - web_view->FindFrameByName(frame_name, web_view->MainFrame()); + WebFrame* frame = web_view->MainFrame(); + if (frame && frame->IsWebLocalFrame()) + frame = frame->ToWebLocalFrame()->FindFrameByName(frame_name); if (!frame) { // Search by unique frame name (Frame::uniqueName). const std::string& searchname = name; for (WebFrame* cur_frame = web_view->MainFrame(); cur_frame; cur_frame = cur_frame->TraverseNext()) { - if (render_frame_util::GetUniqueName(cur_frame) == searchname) { + if (cur_frame->IsWebLocalFrame() && + render_frame_util::GetUniqueName(cur_frame->ToWebLocalFrame()) == + searchname) { frame = cur_frame; break; } } } - if (frame) - return GetWebFrameImpl(frame).get(); + if (frame && frame->IsWebLocalFrame()) + return GetWebFrameImpl(frame->ToWebLocalFrame()).get(); } return nullptr; @@ -232,7 +253,9 @@ void CefBrowserImpl::GetFrameIdentifiers(std::vector& identifiers) { if (render_view()->GetWebView()) { for (WebFrame* frame = render_view()->GetWebView()->MainFrame(); frame; frame = frame->TraverseNext()) { - identifiers.push_back(render_frame_util::GetIdentifier(frame)); + if (frame->IsWebLocalFrame()) + identifiers.push_back( + render_frame_util::GetIdentifier(frame->ToWebLocalFrame())); } } } @@ -246,7 +269,9 @@ void CefBrowserImpl::GetFrameNames(std::vector& names) { if (render_view()->GetWebView()) { for (WebFrame* frame = render_view()->GetWebView()->MainFrame(); frame; frame = frame->TraverseNext()) { - names.push_back(render_frame_util::GetUniqueName(frame)); + if (frame->IsWebLocalFrame()) + names.push_back( + render_frame_util::GetUniqueName(frame->ToWebLocalFrame())); } } } @@ -285,7 +310,7 @@ void CefBrowserImpl::LoadRequest(const CefMsg_LoadRequest_Params& params) { if (!framePtr.get()) return; - WebFrame* web_frame = framePtr->web_frame(); + WebLocalFrame* web_frame = framePtr->web_frame(); blink::WebURLRequest request; CefRequestImpl::Get(params, request); @@ -313,7 +338,7 @@ bool CefBrowserImpl::SendProcessMessage(CefProcessId target_process, } CefRefPtr CefBrowserImpl::GetWebFrameImpl( - blink::WebFrame* frame) { + blink::WebLocalFrame* frame) { DCHECK(frame); int64_t frame_id = render_frame_util::GetIdentifier(frame); @@ -325,10 +350,12 @@ CefRefPtr CefBrowserImpl::GetWebFrameImpl( CefRefPtr framePtr(new CefFrameImpl(this, frame)); frames_.insert(std::make_pair(frame_id, framePtr)); - const int64_t parent_id = - frame->Parent() == NULL - ? webkit_glue::kInvalidFrameId - : render_frame_util::GetIdentifier(frame->Parent()); + const int64_t parent_id = frame->Parent() == NULL + ? webkit_glue::kInvalidFrameId + : frame->Parent()->IsWebLocalFrame() + ? render_frame_util::GetIdentifier( + frame->Parent()->ToWebLocalFrame()) + : webkit_glue::kInvalidFrameId; const base::string16& name = base::UTF8ToUTF16(render_frame_util::GetUniqueName(frame)); @@ -340,8 +367,12 @@ CefRefPtr CefBrowserImpl::GetWebFrameImpl( CefRefPtr CefBrowserImpl::GetWebFrameImpl(int64_t frame_id) { if (frame_id == webkit_glue::kInvalidFrameId) { - if (render_view()->GetWebView() && render_view()->GetWebView()->MainFrame()) - return GetWebFrameImpl(render_view()->GetWebView()->MainFrame()); + if (render_view()->GetWebView()) { + WebFrame* main_frame = render_view()->GetWebView()->MainFrame(); + if (main_frame && main_frame->IsWebLocalFrame()) { + return GetWebFrameImpl(main_frame->ToWebLocalFrame()); + } + } return nullptr; } @@ -354,8 +385,11 @@ CefRefPtr CefBrowserImpl::GetWebFrameImpl(int64_t frame_id) { // Check if the frame exists but we don't know about it yet. for (WebFrame* frame = render_view()->GetWebView()->MainFrame(); frame; frame = frame->TraverseNext()) { - if (render_frame_util::GetIdentifier(frame) == frame_id) - return GetWebFrameImpl(frame); + if (frame->IsWebLocalFrame() && + render_frame_util::GetIdentifier(frame->ToWebLocalFrame()) == + frame_id) { + return GetWebFrameImpl(frame->ToWebLocalFrame()); + } } } @@ -435,7 +469,7 @@ void CefBrowserImpl::DidCommitProvisionalLoad(blink::WebLocalFrame* frame, OnLoadStart(frame); } -void CefBrowserImpl::FrameDetached(WebFrame* frame) { +void CefBrowserImpl::FrameDetached(WebLocalFrame* frame) { int64_t frame_id = render_frame_util::GetIdentifier(frame); if (!frames_.empty()) { @@ -467,10 +501,13 @@ void CefBrowserImpl::FocusedNodeChanged(const blink::WebNode& node) { const blink::WebDocument& document = node.GetDocument(); if (!document.IsNull()) { blink::WebFrame* frame = document.GetFrame(); + if (!frame->IsWebLocalFrame()) + return; CefRefPtr documentImpl = - new CefDOMDocumentImpl(this, frame); - handler->OnFocusedNodeChanged(this, GetWebFrameImpl(frame).get(), - documentImpl->GetOrCreateNode(node)); + new CefDOMDocumentImpl(this, frame->ToWebLocalFrame()); + handler->OnFocusedNodeChanged( + this, GetWebFrameImpl(frame->ToWebLocalFrame()).get(), + documentImpl->GetOrCreateNode(node)); documentImpl->Detach(); } } @@ -479,7 +516,7 @@ void CefBrowserImpl::FocusedNodeChanged(const blink::WebNode& node) { } // Based on ExtensionHelper::DraggableRegionsChanged. -void CefBrowserImpl::DraggableRegionsChanged(blink::WebFrame* frame) { +void CefBrowserImpl::DraggableRegionsChanged(blink::WebLocalFrame* frame) { blink::WebVector webregions = frame->GetDocument().DraggableRegions(); std::vector regions; @@ -535,7 +572,7 @@ void CefBrowserImpl::OnRequest(const Cef_Request_Params& params) { // Execute code. CefRefPtr framePtr = GetWebFrameImpl(params.frame_id); if (framePtr.get()) { - WebFrame* web_frame = framePtr->web_frame(); + WebLocalFrame* web_frame = framePtr->web_frame(); if (web_frame) { DCHECK_EQ(params.arguments.GetSize(), (size_t)4); @@ -565,7 +602,7 @@ void CefBrowserImpl::OnRequest(const Cef_Request_Params& params) { // Execute command. CefRefPtr framePtr = GetWebFrameImpl(params.frame_id); if (framePtr.get()) { - WebFrame* web_frame = framePtr->web_frame(); + WebLocalFrame* web_frame = framePtr->web_frame(); if (web_frame) { DCHECK_EQ(params.arguments.GetSize(), (size_t)1); @@ -575,17 +612,13 @@ void CefBrowserImpl::OnRequest(const Cef_Request_Params& params) { DCHECK(!command.empty()); if (base::LowerCaseEqualsASCII(command, "getsource")) { - if (web_frame->IsWebLocalFrame()) { - response = blink::WebFrameContentDumper::DumpAsMarkup( - web_frame->ToWebLocalFrame()) - .Utf8(); - success = true; - } + response = + blink::WebFrameContentDumper::DumpAsMarkup(web_frame).Utf8(); + success = true; } else if (base::LowerCaseEqualsASCII(command, "gettext")) { response = webkit_glue::DumpDocumentText(web_frame); success = true; - } else if (web_frame->IsWebLocalFrame() && - web_frame->ToWebLocalFrame()->ExecuteCommand( + } else if (web_frame->ExecuteCommand( blink::WebString::FromUTF8(command))) { success = true; } @@ -595,7 +628,7 @@ void CefBrowserImpl::OnRequest(const Cef_Request_Params& params) { // Load a string. CefRefPtr framePtr = GetWebFrameImpl(params.frame_id); if (framePtr.get()) { - WebFrame* web_frame = framePtr->web_frame(); + WebLocalFrame* web_frame = framePtr->web_frame(); if (web_frame) { DCHECK_EQ(params.arguments.GetSize(), (size_t)2); diff --git a/libcef/renderer/browser_impl.h b/libcef/renderer/browser_impl.h index ca0c7c01c..9693ef519 100644 --- a/libcef/renderer/browser_impl.h +++ b/libcef/renderer/browser_impl.h @@ -32,8 +32,9 @@ class ListValue; } namespace blink { +class WebFrame; class WebNode; -} +} // namespace blink // Renderer plumbing for CEF features. There is a one-to-one relationship // between RenderView on the renderer side and RenderViewHost on the browser @@ -91,7 +92,7 @@ class CefBrowserImpl : public CefBrowser, public content::RenderViewObserver { bool user_initiated); // Returns the matching CefFrameImpl reference or creates a new one. - CefRefPtr GetWebFrameImpl(blink::WebFrame* frame); + CefRefPtr GetWebFrameImpl(blink::WebLocalFrame* frame); CefRefPtr GetWebFrameImpl(int64_t frame_id); // Frame objects will be deleted immediately before the frame is closed. @@ -114,14 +115,14 @@ class CefBrowserImpl : public CefBrowser, public content::RenderViewObserver { const blink::WebURLError& error) override; void DidCommitProvisionalLoad(blink::WebLocalFrame* frame, bool is_new_navigation) override; - void DraggableRegionsChanged(blink::WebFrame* frame) override; bool OnMessageReceived(const IPC::Message& message) override; // Forwarded from CefRenderFrameObserver. void DidFinishLoad(blink::WebLocalFrame* frame); void DidStartProvisionalLoad(blink::WebLocalFrame* frame); - void FrameDetached(blink::WebFrame* frame); + void FrameDetached(blink::WebLocalFrame* frame); void FocusedNodeChanged(const blink::WebNode& node); + void DraggableRegionsChanged(blink::WebLocalFrame* frame); private: // RenderViewObserver::OnMessageReceived message handlers. diff --git a/libcef/renderer/content_renderer_client.cc b/libcef/renderer/content_renderer_client.cc index fe70f6560..f28a0a367 100644 --- a/libcef/renderer/content_renderer_client.cc +++ b/libcef/renderer/content_renderer_client.cc @@ -282,8 +282,6 @@ void CefContentRendererClient::WebKitInitialized() { blink::WebSecurityPolicy::RegisterURLSchemeAsDisplayIsolated(scheme); if (info.is_secure) webkit_glue::RegisterURLSchemeAsSecure(scheme); - if (info.is_cors_enabled) - webkit_glue::RegisterURLSchemeAsCORSEnabled(scheme); } } @@ -535,6 +533,9 @@ bool CefContentRendererClient::HandleNavigation( blink::WebNavigationType type, blink::WebNavigationPolicy default_policy, bool is_redirect) { + if (!frame->IsWebLocalFrame()) + return false; + CefRefPtr application = CefContentClient::Get()->application(); if (application.get()) { CefRefPtr handler = @@ -543,7 +544,8 @@ bool CefContentRendererClient::HandleNavigation( CefRefPtr browserPtr = CefBrowserImpl::GetBrowserForMainFrame(frame->Top()); if (browserPtr.get()) { - CefRefPtr framePtr = browserPtr->GetWebFrameImpl(frame); + CefRefPtr framePtr = + browserPtr->GetWebFrameImpl(frame->ToWebLocalFrame()); CefRefPtr requestPtr(CefRequest::Create()); CefRequestImpl* requestImpl = static_cast(requestPtr.get()); @@ -611,6 +613,7 @@ bool CefContentRendererClient::WillSendRequest( blink::WebLocalFrame* frame, ui::PageTransition transition_type, const blink::WebURL& url, + std::vector>* throttles, GURL* new_url) { if (extensions::ExtensionsEnabled()) { return extensions_renderer_client_->WillSendRequest(frame, transition_type, diff --git a/libcef/renderer/content_renderer_client.h b/libcef/renderer/content_renderer_client.h index 8f22eed99..a95f87c3c 100644 --- a/libcef/renderer/content_renderer_client.h +++ b/libcef/renderer/content_renderer_client.h @@ -28,7 +28,7 @@ class ExtensionsClient; class ExtensionsGuestViewContainerDispatcher; class ExtensionsRendererClient; class ResourceRequestPolicy; -} +} // namespace extensions namespace web_cache { class WebCacheImpl; @@ -110,10 +110,12 @@ class CefContentRendererClient : public content::ContentRendererClient, bool is_initial_navigation, bool is_server_redirect, bool* send_referrer) override; - bool WillSendRequest(blink::WebLocalFrame* frame, - ui::PageTransition transition_type, - const blink::WebURL& url, - GURL* new_url) override; + bool WillSendRequest( + blink::WebLocalFrame* frame, + ui::PageTransition transition_type, + const blink::WebURL& url, + std::vector>* throttles, + GURL* new_url) override; unsigned long long VisitedLinkHash(const char* canonical_url, size_t length) override; bool IsLinkVisited(unsigned long long link_hash) override; diff --git a/libcef/renderer/dom_document_impl.cc b/libcef/renderer/dom_document_impl.cc index 95f9d21cd..a7230444d 100644 --- a/libcef/renderer/dom_document_impl.cc +++ b/libcef/renderer/dom_document_impl.cc @@ -11,20 +11,20 @@ #include "third_party/WebKit/public/platform/WebURL.h" #include "third_party/WebKit/public/web/WebDocument.h" #include "third_party/WebKit/public/web/WebElement.h" -#include "third_party/WebKit/public/web/WebFrame.h" #include "third_party/WebKit/public/web/WebLocalFrame.h" #include "third_party/WebKit/public/web/WebNode.h" #include "third_party/WebKit/public/web/WebRange.h" using blink::WebDocument; using blink::WebElement; -using blink::WebFrame; +using blink::WebLocalFrame; using blink::WebNode; using blink::WebRange; using blink::WebString; using blink::WebURL; -CefDOMDocumentImpl::CefDOMDocumentImpl(CefBrowserImpl* browser, WebFrame* frame) +CefDOMDocumentImpl::CefDOMDocumentImpl(CefBrowserImpl* browser, + WebLocalFrame* frame) : browser_(browser), frame_(frame) { const WebDocument& document = frame_->GetDocument(); DCHECK(!document.IsNull()); @@ -90,21 +90,20 @@ CefRefPtr CefDOMDocumentImpl::GetFocusedNode() { } bool CefDOMDocumentImpl::HasSelection() { - if (!VerifyContext() || !frame_->IsWebLocalFrame()) + if (!VerifyContext()) return false; - return frame_->ToWebLocalFrame()->HasSelection(); + return frame_->HasSelection(); } int CefDOMDocumentImpl::GetSelectionStartOffset() { - if (!VerifyContext() || !frame_->IsWebLocalFrame()) + if (!VerifyContext()) return 0; - blink::WebLocalFrame* local_frame = frame_->ToWebLocalFrame(); - if (!!local_frame->HasSelection()) + if (!frame_->HasSelection()) return 0; - const WebRange& range = local_frame->SelectionRange(); + const WebRange& range = frame_->SelectionRange(); if (range.IsNull()) return 0; @@ -112,14 +111,13 @@ int CefDOMDocumentImpl::GetSelectionStartOffset() { } int CefDOMDocumentImpl::GetSelectionEndOffset() { - if (!VerifyContext() || !frame_->IsWebLocalFrame()) + if (!VerifyContext()) return 0; - blink::WebLocalFrame* local_frame = frame_->ToWebLocalFrame(); - if (!!local_frame->HasSelection()) + if (!frame_->HasSelection()) return 0; - const WebRange& range = local_frame->SelectionRange(); + const WebRange& range = frame_->SelectionRange(); if (range.IsNull()) return 0; @@ -128,14 +126,13 @@ int CefDOMDocumentImpl::GetSelectionEndOffset() { CefString CefDOMDocumentImpl::GetSelectionAsMarkup() { CefString str; - if (!VerifyContext() || !frame_->IsWebLocalFrame()) + if (!VerifyContext()) return str; - blink::WebLocalFrame* local_frame = frame_->ToWebLocalFrame(); - if (!!local_frame->HasSelection()) + if (!frame_->HasSelection()) return str; - const WebString& markup = local_frame->SelectionAsMarkup(); + const WebString& markup = frame_->SelectionAsMarkup(); if (!markup.IsNull()) str = markup.Utf16(); @@ -144,14 +141,13 @@ CefString CefDOMDocumentImpl::GetSelectionAsMarkup() { CefString CefDOMDocumentImpl::GetSelectionAsText() { CefString str; - if (!VerifyContext() || !frame_->IsWebLocalFrame()) + if (!VerifyContext()) return str; - blink::WebLocalFrame* local_frame = frame_->ToWebLocalFrame(); - if (!!local_frame->HasSelection()) + if (!frame_->HasSelection()) return str; - const WebString& text = local_frame->SelectionAsText(); + const WebString& text = frame_->SelectionAsText(); if (!text.IsNull()) str = text.Utf16(); diff --git a/libcef/renderer/dom_document_impl.h b/libcef/renderer/dom_document_impl.h index 9a6fc61d4..cb19218c1 100644 --- a/libcef/renderer/dom_document_impl.h +++ b/libcef/renderer/dom_document_impl.h @@ -10,15 +10,15 @@ #include "include/cef_dom.h" namespace blink { -class WebFrame; +class WebLocalFrame; class WebNode; -}; +}; // namespace blink class CefBrowserImpl; class CefDOMDocumentImpl : public CefDOMDocument { public: - CefDOMDocumentImpl(CefBrowserImpl* browser, blink::WebFrame* frame); + CefDOMDocumentImpl(CefBrowserImpl* browser, blink::WebLocalFrame* frame); ~CefDOMDocumentImpl() override; // CefDOMDocument methods. @@ -38,7 +38,7 @@ class CefDOMDocumentImpl : public CefDOMDocument { CefString GetCompleteURL(const CefString& partialURL) override; CefBrowserImpl* GetBrowser() { return browser_; } - blink::WebFrame* GetFrame() { return frame_; } + blink::WebLocalFrame* GetFrame() { return frame_; } // The document maintains a map of all existing node objects. CefRefPtr GetOrCreateNode(const blink::WebNode& node); @@ -52,7 +52,7 @@ class CefDOMDocumentImpl : public CefDOMDocument { protected: CefBrowserImpl* browser_; - blink::WebFrame* frame_; + blink::WebLocalFrame* frame_; typedef std::map NodeMap; NodeMap node_map_; diff --git a/libcef/renderer/dom_node_impl.cc b/libcef/renderer/dom_node_impl.cc index 9d09aa1bf..254ced0d2 100644 --- a/libcef/renderer/dom_node_impl.cc +++ b/libcef/renderer/dom_node_impl.cc @@ -18,7 +18,6 @@ #include "third_party/WebKit/public/web/WebDocument.h" #include "third_party/WebKit/public/web/WebElement.h" #include "third_party/WebKit/public/web/WebFormControlElement.h" -#include "third_party/WebKit/public/web/WebFrame.h" #include "third_party/WebKit/public/web/WebInputElement.h" #include "third_party/WebKit/public/web/WebNode.h" #include "third_party/WebKit/public/web/WebSelectElement.h" @@ -26,7 +25,6 @@ using blink::WebDocument; using blink::WebDOMEvent; using blink::WebElement; -using blink::WebFrame; using blink::WebFormControlElement; using blink::WebInputElement; using blink::WebNode; diff --git a/libcef/renderer/extensions/extensions_renderer_client.cc b/libcef/renderer/extensions/extensions_renderer_client.cc index d1fba5110..d7c9c9999 100644 --- a/libcef/renderer/extensions/extensions_renderer_client.cc +++ b/libcef/renderer/extensions/extensions_renderer_client.cc @@ -117,6 +117,20 @@ int CefExtensionsRendererClient::GetLowestIsolatedWorldId() const { return 1; } +extensions::Dispatcher* CefExtensionsRendererClient::GetDispatcher() { + return extension_dispatcher_.get(); +} + +void CefExtensionsRendererClient::OnExtensionLoaded( + const extensions::Extension& extension) { + resource_request_policy_->OnExtensionLoaded(extension); +} + +void CefExtensionsRendererClient::OnExtensionUnloaded( + const extensions::ExtensionId& extension_id) { + resource_request_policy_->OnExtensionUnloaded(extension_id); +} + void CefExtensionsRendererClient::RenderThreadStarted() { content::RenderThread* thread = content::RenderThread::Get(); diff --git a/libcef/renderer/extensions/extensions_renderer_client.h b/libcef/renderer/extensions/extensions_renderer_client.h index df2535eb2..eed5af98d 100644 --- a/libcef/renderer/extensions/extensions_renderer_client.h +++ b/libcef/renderer/extensions/extensions_renderer_client.h @@ -19,13 +19,13 @@ class WebFrame; class WebLocalFrame; struct WebPluginParams; class WebURL; -} +} // namespace blink namespace content { class BrowserPluginDelegate; class RenderFrame; class RenderView; -} +} // namespace content namespace extensions { @@ -42,6 +42,10 @@ class CefExtensionsRendererClient : public ExtensionsRendererClient { // ExtensionsRendererClient implementation. bool IsIncognitoProcess() const override; int GetLowestIsolatedWorldId() const override; + extensions::Dispatcher* GetDispatcher() override; + void OnExtensionLoaded(const extensions::Extension& extension) override; + void OnExtensionUnloaded( + const extensions::ExtensionId& extension_id) override; // See CefContentRendererClient methods with the same names. void RenderThreadStarted(); diff --git a/libcef/renderer/frame_impl.cc b/libcef/renderer/frame_impl.cc index 10f855ff6..46cb68eb0 100644 --- a/libcef/renderer/frame_impl.cc +++ b/libcef/renderer/frame_impl.cc @@ -26,7 +26,6 @@ #include "third_party/WebKit/public/platform/WebString.h" #include "third_party/WebKit/public/platform/WebURL.h" #include "third_party/WebKit/public/web/WebDocument.h" -#include "third_party/WebKit/public/web/WebFrame.h" #include "third_party/WebKit/public/web/WebFrameContentDumper.h" #include "third_party/WebKit/public/web/WebKit.h" #include "third_party/WebKit/public/web/WebLocalFrame.h" @@ -35,7 +34,7 @@ using blink::WebString; -CefFrameImpl::CefFrameImpl(CefBrowserImpl* browser, blink::WebFrame* frame) +CefFrameImpl::CefFrameImpl(CefBrowserImpl* browser, blink::WebLocalFrame* frame) : browser_(browser), frame_(frame), frame_id_(render_frame_util::GetIdentifier(frame)) {} @@ -82,10 +81,9 @@ void CefFrameImpl::ViewSource() { void CefFrameImpl::GetSource(CefRefPtr visitor) { CEF_REQUIRE_RT_RETURN_VOID(); - if (frame_ && frame_->IsWebLocalFrame()) { - const CefString& content = std::string( - blink::WebFrameContentDumper::DumpAsMarkup(frame_->ToWebLocalFrame()) - .Utf8()); + if (frame_) { + const CefString& content = + std::string(blink::WebFrameContentDumper::DumpAsMarkup(frame_).Utf8()); visitor->Visit(content); } } @@ -205,8 +203,8 @@ CefRefPtr CefFrameImpl::GetParent() { if (frame_) { blink::WebFrame* parent = frame_->Parent(); - if (parent) - return browser_->GetWebFrameImpl(parent).get(); + if (parent && parent->IsWebLocalFrame()) + return browser_->GetWebFrameImpl(parent->ToWebLocalFrame()).get(); } return NULL; @@ -267,8 +265,8 @@ void CefFrameImpl::Detach() { void CefFrameImpl::ExecuteCommand(const std::string& command) { CEF_REQUIRE_RT_RETURN_VOID(); - if (frame_ && frame_->IsWebLocalFrame()) - frame_->ToWebLocalFrame()->ExecuteCommand(WebString::FromUTF8(command)); + if (frame_) + frame_->ExecuteCommand(WebString::FromUTF8(command)); } // Enable deprecation warnings for MSVC. See http://crbug.com/585142. diff --git a/libcef/renderer/frame_impl.h b/libcef/renderer/frame_impl.h index 586ae23eb..674615792 100644 --- a/libcef/renderer/frame_impl.h +++ b/libcef/renderer/frame_impl.h @@ -13,7 +13,7 @@ class CefBrowserImpl; namespace blink { -class WebFrame; +class WebLocalFrame; } // Implementation of CefFrame. CefFrameImpl objects are owned by the @@ -21,7 +21,7 @@ class WebFrame; // associated renderer WebFrame will close. class CefFrameImpl : public CefFrame { public: - CefFrameImpl(CefBrowserImpl* browser, blink::WebFrame* frame); + CefFrameImpl(CefBrowserImpl* browser, blink::WebLocalFrame* frame); ~CefFrameImpl() override; // CefFrame implementation. @@ -54,13 +54,13 @@ class CefFrameImpl : public CefFrame { void Detach(); - blink::WebFrame* web_frame() const { return frame_; } + blink::WebLocalFrame* web_frame() const { return frame_; } private: void ExecuteCommand(const std::string& command); CefBrowserImpl* browser_; - blink::WebFrame* frame_; + blink::WebLocalFrame* frame_; int64 frame_id_; IMPLEMENT_REFCOUNTING(CefFrameImpl); diff --git a/libcef/renderer/plugins/cef_plugin_placeholder.cc b/libcef/renderer/plugins/cef_plugin_placeholder.cc index 96558b509..bff4edc2c 100644 --- a/libcef/renderer/plugins/cef_plugin_placeholder.cc +++ b/libcef/renderer/plugins/cef_plugin_placeholder.cc @@ -169,7 +169,10 @@ void CefPluginPlaceholder::PluginListChanged() { if (!render_frame() || !plugin()) return; blink::WebLocalFrame* web_frame = render_frame()->GetWebFrame(); - blink::WebDocument document = web_frame->Top()->GetDocument(); + if (!web_frame->Top()->IsWebLocalFrame()) + return; + blink::WebDocument document = + web_frame->Top()->ToWebLocalFrame()->GetDocument(); if (document.IsNull()) return; diff --git a/libcef/renderer/render_frame_observer.cc b/libcef/renderer/render_frame_observer.cc index 228780a71..dabeea2fe 100644 --- a/libcef/renderer/render_frame_observer.cc +++ b/libcef/renderer/render_frame_observer.cc @@ -73,6 +73,16 @@ void CefRenderFrameObserver::FocusedNodeChanged(const blink::WebNode& node) { browserPtr->FocusedNodeChanged(node); } +void CefRenderFrameObserver::DraggableRegionsChanged() { + blink::WebLocalFrame* frame = render_frame()->GetWebFrame(); + CefRefPtr browserPtr = + CefBrowserImpl::GetBrowserForMainFrame(frame->Top()); + if (!browserPtr.get()) + return; + + browserPtr->DraggableRegionsChanged(frame); +} + void CefRenderFrameObserver::DidCreateScriptContext( v8::Handle context, int world_id) { diff --git a/libcef/renderer/render_frame_observer.h b/libcef/renderer/render_frame_observer.h index bcaf231b4..c83994af9 100644 --- a/libcef/renderer/render_frame_observer.h +++ b/libcef/renderer/render_frame_observer.h @@ -22,6 +22,7 @@ class CefRenderFrameObserver : public content::RenderFrameObserver { void FrameDetached() override; void FrameFocused() override; void FocusedNodeChanged(const blink::WebNode& node) override; + void DraggableRegionsChanged() override; void DidCreateScriptContext(v8::Handle context, int world_id) override; void WillReleaseScriptContext(v8::Handle context, diff --git a/libcef/renderer/render_frame_util.cc b/libcef/renderer/render_frame_util.cc index 093eab968..4310df487 100644 --- a/libcef/renderer/render_frame_util.cc +++ b/libcef/renderer/render_frame_util.cc @@ -12,7 +12,7 @@ namespace render_frame_util { -int64_t GetIdentifier(blink::WebFrame* frame) { +int64_t GetIdentifier(blink::WebLocalFrame* frame) { // Each WebFrame will have an associated RenderFrame. The RenderFrame // routing IDs are unique within a given renderer process. content::RenderFrame* render_frame = @@ -23,7 +23,7 @@ int64_t GetIdentifier(blink::WebFrame* frame) { return webkit_glue::kInvalidFrameId; } -std::string GetUniqueName(blink::WebFrame* frame) { +std::string GetUniqueName(blink::WebLocalFrame* frame) { content::RenderFrameImpl* render_frame = content::RenderFrameImpl::FromWebFrame(frame); DCHECK(render_frame); @@ -32,4 +32,4 @@ std::string GetUniqueName(blink::WebFrame* frame) { return std::string(); } -} // render_frame_util +} // namespace render_frame_util diff --git a/libcef/renderer/render_frame_util.h b/libcef/renderer/render_frame_util.h index 96af7a882..54a259c2a 100644 --- a/libcef/renderer/render_frame_util.h +++ b/libcef/renderer/render_frame_util.h @@ -11,14 +11,14 @@ #include namespace blink { -class WebFrame; +class WebLocalFrame; } namespace render_frame_util { -int64_t GetIdentifier(blink::WebFrame* frame); -std::string GetUniqueName(blink::WebFrame* frame); +int64_t GetIdentifier(blink::WebLocalFrame* frame); +std::string GetUniqueName(blink::WebLocalFrame* frame); -} // render_frame_util +} // namespace render_frame_util #endif // CEF_LIBCEF_RENDERER_RENDER_FRAME_UTIL_H_ diff --git a/libcef/renderer/render_urlrequest_impl.cc b/libcef/renderer/render_urlrequest_impl.cc index a4aaad53c..b9757c11b 100644 --- a/libcef/renderer/render_urlrequest_impl.cc +++ b/libcef/renderer/render_urlrequest_impl.cc @@ -94,13 +94,19 @@ class CefRenderURLRequest::Context if (!url.is_valid()) return false; - loader_ = blink::Platform::Current()->CreateURLLoader(); url_client_.reset(new CefWebURLLoaderClient(this, request_->GetFlags())); WebURLRequest urlRequest; static_cast(request_.get()) ->Get(urlRequest, upload_data_size_); + // Set the origin to match the request. The requirement for an origin is + // DCHECK'd in ResourceDispatcherHostImpl::ContinuePendingBeginRequest. + urlRequest.SetRequestorOrigin( + blink::WebSecurityOrigin::Create(urlRequest.Url())); + + loader_ = blink::Platform::Current()->CreateURLLoader(urlRequest, + task_runner_.get()); loader_->LoadAsynchronously(urlRequest, url_client_.get()); return true; } @@ -211,7 +217,7 @@ class CefRenderURLRequest::Context CefRefPtr url_request_; CefRefPtr request_; CefRefPtr client_; - scoped_refptr task_runner_; + scoped_refptr task_runner_; CefURLRequest::Status status_; CefURLRequest::ErrorCode error_code_; CefRefPtr response_; diff --git a/libcef/renderer/v8_impl.cc b/libcef/renderer/v8_impl.cc index f4bf7b873..3eedd5375 100644 --- a/libcef/renderer/v8_impl.cc +++ b/libcef/renderer/v8_impl.cc @@ -883,7 +883,7 @@ CefRefPtr CefV8ContextImpl::GetBrowser() { CefRefPtr browser; CEF_V8_REQUIRE_VALID_HANDLE_RETURN(browser); - blink::WebFrame* webframe = GetWebFrame(); + blink::WebLocalFrame* webframe = GetWebFrame(); if (webframe) browser = CefBrowserImpl::GetBrowserForMainFrame(webframe->Top()); @@ -894,7 +894,7 @@ CefRefPtr CefV8ContextImpl::GetFrame() { CefRefPtr frame; CEF_V8_REQUIRE_VALID_HANDLE_RETURN(frame); - blink::WebFrame* webframe = GetWebFrame(); + blink::WebLocalFrame* webframe = GetWebFrame(); if (webframe) { CefRefPtr browser = CefBrowserImpl::GetBrowserForMainFrame(webframe->Top()); @@ -1023,7 +1023,7 @@ v8::Local CefV8ContextImpl::GetV8Context() { return handle_->GetNewV8Handle(); } -blink::WebFrame* CefV8ContextImpl::GetWebFrame() { +blink::WebLocalFrame* CefV8ContextImpl::GetWebFrame() { CEF_REQUIRE_RT(); if (webkit_glue::IsScriptForbidden()) diff --git a/libcef/renderer/v8_impl.h b/libcef/renderer/v8_impl.h index 2d9ac13b1..796902e73 100644 --- a/libcef/renderer/v8_impl.h +++ b/libcef/renderer/v8_impl.h @@ -21,7 +21,7 @@ class CefTrackNode; class GURL; namespace blink { -class WebFrame; +class WebLocalFrame; }; // Call after a V8 Isolate has been created and entered for the first time. @@ -177,7 +177,7 @@ class CefV8ContextImpl : public CefV8Context { CefRefPtr& exception) override; v8::Local GetV8Context(); - blink::WebFrame* GetWebFrame(); + blink::WebLocalFrame* GetWebFrame(); private: typedef CefV8Handle Handle; diff --git a/libcef/renderer/webkit_glue.cc b/libcef/renderer/webkit_glue.cc index 82633f0fc..7a8e5783e 100644 --- a/libcef/renderer/webkit_glue.cc +++ b/libcef/renderer/webkit_glue.cc @@ -66,7 +66,7 @@ void GoForward(blink::WebView* view) { impl->Client()->NavigateBackForwardSoon(1); } -std::string DumpDocumentText(blink::WebFrame* frame) { +std::string DumpDocumentText(blink::WebLocalFrame* frame) { // We use the document element's text instead of the body text here because // not all documents have a body, such as XML documents. blink::WebElement document_element = frame->GetDocument().DocumentElement(); @@ -201,10 +201,6 @@ void RegisterURLSchemeAsSecure(const blink::WebString& scheme) { blink::SchemeRegistry::RegisterURLSchemeAsSecure(scheme); } -void RegisterURLSchemeAsCORSEnabled(const blink::WebString& scheme) { - blink::SchemeRegistry::RegisterURLSchemeAsCORSEnabled(scheme); -} - struct CefScriptForbiddenScope::Impl { blink::ScriptForbiddenScope scope_; }; @@ -213,4 +209,4 @@ CefScriptForbiddenScope::CefScriptForbiddenScope() : impl_(new Impl()) {} CefScriptForbiddenScope::~CefScriptForbiddenScope() {} -} // webkit_glue +} // namespace webkit_glue diff --git a/libcef/renderer/webkit_glue.h b/libcef/renderer/webkit_glue.h index 5856e5ac4..3f1b3c350 100644 --- a/libcef/renderer/webkit_glue.h +++ b/libcef/renderer/webkit_glue.h @@ -19,11 +19,11 @@ namespace blink { class WebElement; -class WebFrame; +class WebLocalFrame; class WebNode; class WebString; class WebView; -} +} // namespace blink namespace webkit_glue { @@ -35,7 +35,7 @@ BLINK_EXPORT void GoBack(blink::WebView* view); BLINK_EXPORT void GoForward(blink::WebView* view); // Returns the text of the document element. -BLINK_EXPORT std::string DumpDocumentText(blink::WebFrame* frame); +BLINK_EXPORT std::string DumpDocumentText(blink::WebLocalFrame* frame); // Expose additional actions on WebNode. BLINK_EXPORT cef_dom_node_type_t GetNodeType(const blink::WebNode& node); @@ -67,8 +67,6 @@ BLINK_EXPORT bool IsScriptForbidden(); BLINK_EXPORT void RegisterURLSchemeAsLocal(const blink::WebString& scheme); BLINK_EXPORT void RegisterURLSchemeAsSecure(const blink::WebString& scheme); -BLINK_EXPORT void RegisterURLSchemeAsCORSEnabled( - const blink::WebString& scheme); // Wrapper for blink::ScriptForbiddenScope. class BLINK_EXPORT CefScriptForbiddenScope final { @@ -83,6 +81,6 @@ class BLINK_EXPORT CefScriptForbiddenScope final { DISALLOW_COPY_AND_ASSIGN(CefScriptForbiddenScope); }; -} // webkit_glue +} // namespace webkit_glue #endif // CEF_LIBCEF_RENDERER_WEBKIT_GLUE_H_ diff --git a/libcef/utility/content_utility_client.cc b/libcef/utility/content_utility_client.cc index 53a6d4b3e..2dff3701f 100644 --- a/libcef/utility/content_utility_client.cc +++ b/libcef/utility/content_utility_client.cc @@ -8,7 +8,6 @@ #include #include "build/build_config.h" -#include "chrome/common/chrome_utility_messages.h" #include "chrome/utility/utility_message_handler.h" #include "components/printing/service/public/cpp/pdf_compositor_service_factory.h" #include "components/printing/service/public/interfaces/pdf_compositor.mojom.h" @@ -26,7 +25,6 @@ namespace { void CreateProxyResolverFactory( - const service_manager::BindSourceInfo& source_info, net::interfaces::ProxyResolverFactoryRequest request) { mojo::MakeStrongBinding(base::MakeUnique(), std::move(request)); @@ -36,7 +34,7 @@ void CreateProxyResolverFactory( CefContentUtilityClient::CefContentUtilityClient() { #if defined(OS_WIN) - handlers_.push_back(new printing::PrintingHandler()); + handlers_.push_back(base::MakeUnique()); #endif } @@ -73,7 +71,7 @@ bool CefContentUtilityClient::OnMessageReceived(const IPC::Message& message) { } void CefContentUtilityClient::RegisterServices(StaticServiceMap* services) { - content::ServiceInfo pdf_compositor_info; + service_manager::EmbeddedServiceInfo pdf_compositor_info; pdf_compositor_info.factory = base::Bind(&printing::CreatePdfCompositorService, std::string()); services->emplace(printing::mojom::kServiceName, pdf_compositor_info); diff --git a/libcef/utility/content_utility_client.h b/libcef/utility/content_utility_client.h index 2c7855c6e..f8c84183f 100644 --- a/libcef/utility/content_utility_client.h +++ b/libcef/utility/content_utility_client.h @@ -6,7 +6,9 @@ #ifndef LIBCEF_UTILITY_CONTENT_UTILITY_CLIENT_H_ #define LIBCEF_UTILITY_CONTENT_UTILITY_CLIENT_H_ -#include "base/memory/scoped_vector.h" +#include +#include + #include "content/public/utility/content_utility_client.h" class UtilityMessageHandler; @@ -21,7 +23,7 @@ class CefContentUtilityClient : public content::ContentUtilityClient { void RegisterServices(StaticServiceMap* services) override; private: - typedef ScopedVector Handlers; + using Handlers = std::vector>; Handlers handlers_; DISALLOW_COPY_AND_ASSIGN(CefContentUtilityClient); diff --git a/libcef_dll/cpptoc/accessibility_handler_cpptoc.cc b/libcef_dll/cpptoc/accessibility_handler_cpptoc.cc index 4077908a6..e1bcf2962 100644 --- a/libcef_dll/cpptoc/accessibility_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/accessibility_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fa03e8ba9a443a9028246fe21a8995d8a7bdb7d5$ +// $hash=a62c6931d085746acf26926662f2b8497bd61186$ // #include "libcef_dll/cpptoc/accessibility_handler_cpptoc.h" @@ -79,10 +79,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefAccessibilityHandlerCppToC, + CefAccessibilityHandler, + cef_accessibility_handler_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/app_cpptoc.cc b/libcef_dll/cpptoc/app_cpptoc.cc index 0485f09e7..d05d588ec 100644 --- a/libcef_dll/cpptoc/app_cpptoc.cc +++ b/libcef_dll/cpptoc/app_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9f5778bffbd8c25b6f4ee2e7ec06e9eca5f9f48d$ +// $hash=0316cd113473467a653145abd66ec920256f53ce$ // #include "libcef_dll/cpptoc/app_cpptoc.h" @@ -137,7 +137,8 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/auth_callback_cpptoc.cc b/libcef_dll/cpptoc/auth_callback_cpptoc.cc index 64f546853..342ddfe22 100644 --- a/libcef_dll/cpptoc/auth_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/auth_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=bffdd556dc95e464816b9aa0c8b46e7fadd89e5d$ +// $hash=59c6739c35bb63b28d66cc94109583eb5bd615f6$ // #include "libcef_dll/cpptoc/auth_callback_cpptoc.h" @@ -71,7 +71,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_auth_callback_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/base_ref_counted_cpptoc.cc b/libcef_dll/cpptoc/base_ref_counted_cpptoc.cc index aabeb80bd..137266b8c 100644 --- a/libcef_dll/cpptoc/base_ref_counted_cpptoc.cc +++ b/libcef_dll/cpptoc/base_ref_counted_cpptoc.cc @@ -20,8 +20,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_base_ref_counted_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/base_scoped_cpptoc.cc b/libcef_dll/cpptoc/base_scoped_cpptoc.cc index fd46a1437..2763a6208 100644 --- a/libcef_dll/cpptoc/base_scoped_cpptoc.cc +++ b/libcef_dll/cpptoc/base_scoped_cpptoc.cc @@ -24,9 +24,9 @@ CefCppToCScoped:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCScoped::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCScoped:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/before_download_callback_cpptoc.cc b/libcef_dll/cpptoc/before_download_callback_cpptoc.cc index 9d9c2224d..27faccbda 100644 --- a/libcef_dll/cpptoc/before_download_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/before_download_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a904d37178d2bce73fdd6937cefa9f70dc352038$ +// $hash=f1065394dac333079e531be1c0868c78bdc61163$ // #include "libcef_dll/cpptoc/before_download_callback_cpptoc.h" @@ -54,10 +54,10 @@ CefCppToCRefCounted -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefBeforeDownloadCallbackCppToC, + CefBeforeDownloadCallback, + cef_before_download_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/binary_value_cpptoc.cc b/libcef_dll/cpptoc/binary_value_cpptoc.cc index 4861391ac..7382e8775 100644 --- a/libcef_dll/cpptoc/binary_value_cpptoc.cc +++ b/libcef_dll/cpptoc/binary_value_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3bb896234f1b9fc0ee14f936f28b6585a82502db$ +// $hash=050a562b7dad49c1fff63b7f17adfa0670fa186a$ // #include "libcef_dll/cpptoc/binary_value_cpptoc.h" @@ -181,7 +181,8 @@ CefCppToCRefCounted:: template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_binary_value_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/browser_cpptoc.cc b/libcef_dll/cpptoc/browser_cpptoc.cc index 8eca9324c..853984d79 100644 --- a/libcef_dll/cpptoc/browser_cpptoc.cc +++ b/libcef_dll/cpptoc/browser_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a5b87e4e7e656c8643febf4afb3d1bd3f06c7ac0$ +// $hash=28cdec0f8fd53a117bc9d4ea51d3bf9102ad239a$ // #include "libcef_dll/cpptoc/browser_cpptoc.h" @@ -394,9 +394,9 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/browser_host_cpptoc.cc b/libcef_dll/cpptoc/browser_host_cpptoc.cc index 914ebb8e5..879a9499d 100644 --- a/libcef_dll/cpptoc/browser_host_cpptoc.cc +++ b/libcef_dll/cpptoc/browser_host_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=63aa1967a233a66852969c1e72ecd0c12e69105b$ +// $hash=1c14ea52e06cca6ef0ad5e82797b9b1cda7141b4$ // #include "libcef_dll/cpptoc/browser_host_cpptoc.h" @@ -1091,7 +1091,8 @@ CefCppToCRefCounted:: template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_browser_host_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/browser_process_handler_cpptoc.cc b/libcef_dll/cpptoc/browser_process_handler_cpptoc.cc index ffe390578..883c4b576 100644 --- a/libcef_dll/cpptoc/browser_process_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/browser_process_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=81332687e151af6933a729c1456dd4b3a64f82df$ +// $hash=dc92a1083681b1f0b2c2bf42470f5421d256391c$ // #include "libcef_dll/cpptoc/browser_process_handler_cpptoc.h" @@ -129,10 +129,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefBrowserProcessHandlerCppToC, + CefBrowserProcessHandler, + cef_browser_process_handler_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/callback_cpptoc.cc b/libcef_dll/cpptoc/callback_cpptoc.cc index d063c16c6..a8511a03d 100644 --- a/libcef_dll/cpptoc/callback_cpptoc.cc +++ b/libcef_dll/cpptoc/callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7d4c882910cd07c9659eefe6eb579e4096cd760c$ +// $hash=296c8446b991c25a64b1404978e1f9a61caa6807$ // #include "libcef_dll/cpptoc/callback_cpptoc.h" @@ -59,9 +59,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/client_cpptoc.cc b/libcef_dll/cpptoc/client_cpptoc.cc index 2db75c657..a458e09b5 100644 --- a/libcef_dll/cpptoc/client_cpptoc.cc +++ b/libcef_dll/cpptoc/client_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4ddb855e437a437ac87a894769d7e8c6cf208988$ +// $hash=01e33f9b6a75ddf67f1b04e2b58414ca3cf7489b$ // #include "libcef_dll/cpptoc/client_cpptoc.h" @@ -320,8 +320,8 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = - 0; + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/command_line_cpptoc.cc b/libcef_dll/cpptoc/command_line_cpptoc.cc index df8f8d742..8c6b71bf3 100644 --- a/libcef_dll/cpptoc/command_line_cpptoc.cc +++ b/libcef_dll/cpptoc/command_line_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b8f85a07998ec47d97910a04b0e68b34700a55ea$ +// $hash=e1f9cd96b87ed70f777a4b1b894137a0667b254d$ // #include "libcef_dll/cpptoc/command_line_cpptoc.h" @@ -425,7 +425,8 @@ CefCppToCRefCounted:: template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_command_line_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/completion_callback_cpptoc.cc b/libcef_dll/cpptoc/completion_callback_cpptoc.cc index 40a154c55..adafa04d9 100644 --- a/libcef_dll/cpptoc/completion_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/completion_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fa15c71d8a7710d8e1c326ede770c2359b790188$ +// $hash=3395dcdcef421c933a9901fd1e34cd28a9e75955$ // #include "libcef_dll/cpptoc/completion_callback_cpptoc.h" @@ -50,10 +50,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/context_menu_handler_cpptoc.cc b/libcef_dll/cpptoc/context_menu_handler_cpptoc.cc index ca4e4f410..6c26ab456 100644 --- a/libcef_dll/cpptoc/context_menu_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/context_menu_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=29e80c799b48d2d05117f502e4ab1a71e510b5e9$ +// $hash=4efcbb85fedc05657096c4e7067510d4a4d6201d$ // #include "libcef_dll/cpptoc/context_menu_handler_cpptoc.h" @@ -184,10 +184,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/context_menu_params_cpptoc.cc b/libcef_dll/cpptoc/context_menu_params_cpptoc.cc index 7aae32892..d057531ad 100644 --- a/libcef_dll/cpptoc/context_menu_params_cpptoc.cc +++ b/libcef_dll/cpptoc/context_menu_params_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=18b1ac42fafd91952f9e5f88e765b2b7af85893e$ +// $hash=db28afc87f0ebf30a02f3479b5b3079de17c023d$ // #include "libcef_dll/cpptoc/context_menu_params_cpptoc.h" @@ -401,10 +401,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/cookie_manager_cpptoc.cc b/libcef_dll/cpptoc/cookie_manager_cpptoc.cc index dc7f6bc4e..f063e6f7e 100644 --- a/libcef_dll/cpptoc/cookie_manager_cpptoc.cc +++ b/libcef_dll/cpptoc/cookie_manager_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=decd4e8fc4ddfe8c55b7227842584974e2581739$ +// $hash=06c1ac91f541c3bf4690b6f16f19043abf07180a$ // #include "libcef_dll/cpptoc/cookie_manager_cpptoc.h" @@ -250,7 +250,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_cookie_manager_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/cookie_visitor_cpptoc.cc b/libcef_dll/cpptoc/cookie_visitor_cpptoc.cc index 1a86f0f90..44126c630 100644 --- a/libcef_dll/cpptoc/cookie_visitor_cpptoc.cc +++ b/libcef_dll/cpptoc/cookie_visitor_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f940c4ed56f4c6e6dbb2cefb49b81376bccbe3ff$ +// $hash=20109c1591f4c081a1f35885f2c336c090ea805e$ // #include "libcef_dll/cpptoc/cookie_visitor_cpptoc.h" @@ -78,7 +78,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_cookie_visitor_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/cpptoc_ref_counted.h b/libcef_dll/cpptoc/cpptoc_ref_counted.h index a728a2e61..3e4294e5d 100644 --- a/libcef_dll/cpptoc/cpptoc_ref_counted.h +++ b/libcef_dll/cpptoc/cpptoc_ref_counted.h @@ -6,6 +6,7 @@ #define CEF_LIBCEF_DLL_CPPTOC_CPPTOC_REF_COUNTED_H_ #pragma once +#include "include/base/cef_atomic_ref_count.h" #include "include/base/cef_logging.h" #include "include/base/cef_macros.h" #include "include/capi/cef_base_capi.h" diff --git a/libcef_dll/cpptoc/delete_cookies_callback_cpptoc.cc b/libcef_dll/cpptoc/delete_cookies_callback_cpptoc.cc index 7ad4a2680..d786d5356 100644 --- a/libcef_dll/cpptoc/delete_cookies_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/delete_cookies_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f17a9939eba29ab59060b3198e6041ff582a42a8$ +// $hash=f06ecbd1e962a29bb0191b05a5545cbc0e190742$ // #include "libcef_dll/cpptoc/delete_cookies_callback_cpptoc.h" @@ -52,10 +52,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefDeleteCookiesCallbackCppToC, + CefDeleteCookiesCallback, + cef_delete_cookies_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/dialog_handler_cpptoc.cc b/libcef_dll/cpptoc/dialog_handler_cpptoc.cc index e772a1a8b..148a838cb 100644 --- a/libcef_dll/cpptoc/dialog_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/dialog_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2905826a83c8afbda57e2a6868bb447f8f22b58b$ +// $hash=170d331ab7043203f4f0af870145bd4a52f4a409$ // #include "libcef_dll/cpptoc/dialog_handler_cpptoc.h" @@ -85,7 +85,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_dialog_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/dictionary_value_cpptoc.cc b/libcef_dll/cpptoc/dictionary_value_cpptoc.cc index 94b0dc5b1..a1c9494d9 100644 --- a/libcef_dll/cpptoc/dictionary_value_cpptoc.cc +++ b/libcef_dll/cpptoc/dictionary_value_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a70d01195a3849949d5046432f91e572dd2570d0$ +// $hash=3cdada10947321560080168e4869c1365fe84418$ // #include "libcef_dll/cpptoc/dictionary_value_cpptoc.h" @@ -677,8 +677,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_dictionary_value_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/display_handler_cpptoc.cc b/libcef_dll/cpptoc/display_handler_cpptoc.cc index cd699ba14..03dfd29a5 100644 --- a/libcef_dll/cpptoc/display_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/display_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=92456884efde30d533ac7761b12bb476b5856052$ +// $hash=ae4395cea3553abdea6394d37325c40454505477$ // #include "libcef_dll/cpptoc/display_handler_cpptoc.h" @@ -213,7 +213,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_display_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/domdocument_cpptoc.cc b/libcef_dll/cpptoc/domdocument_cpptoc.cc index 0d967eb0c..19bfe237b 100644 --- a/libcef_dll/cpptoc/domdocument_cpptoc.cc +++ b/libcef_dll/cpptoc/domdocument_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=bf4251a1aeebda1ec6014743d22a9617852fe5cc$ +// $hash=73c901031694bbf5a12997f5c9ec22ca54668781$ // #include "libcef_dll/cpptoc/domdocument_cpptoc.h" @@ -276,7 +276,8 @@ CefCppToCRefCounted:: template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_domdocument_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/domnode_cpptoc.cc b/libcef_dll/cpptoc/domnode_cpptoc.cc index 735c776fe..fbc399cb1 100644 --- a/libcef_dll/cpptoc/domnode_cpptoc.cc +++ b/libcef_dll/cpptoc/domnode_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=160a85714fa66da2e5e8ce95b0fd14daaabcbfdf$ +// $hash=5be4d0cf48a4f89ca914ab9881f638496f4e051f$ // #include "libcef_dll/cpptoc/domnode_cpptoc.h" @@ -489,9 +489,9 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/domvisitor_cpptoc.cc b/libcef_dll/cpptoc/domvisitor_cpptoc.cc index b0eb21cc9..be44b9dff 100644 --- a/libcef_dll/cpptoc/domvisitor_cpptoc.cc +++ b/libcef_dll/cpptoc/domvisitor_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=de24c7c2b66d08aff8d9fc36cc35419345503840$ +// $hash=b3065bcabcd6be1a573f3db27bc9e92ccc1f4001$ // #include "libcef_dll/cpptoc/domvisitor_cpptoc.h" @@ -53,9 +53,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/download_handler_cpptoc.cc b/libcef_dll/cpptoc/download_handler_cpptoc.cc index 75d27451e..567865249 100644 --- a/libcef_dll/cpptoc/download_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/download_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=34d34f4a980b476678152ac69842f7d0b3a95a36$ +// $hash=a36db895d27ac61f54843952c99c7f34880980db$ // #include "libcef_dll/cpptoc/download_handler_cpptoc.h" @@ -110,8 +110,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_download_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/download_image_callback_cpptoc.cc b/libcef_dll/cpptoc/download_image_callback_cpptoc.cc index ba5a0c4fc..aac547449 100644 --- a/libcef_dll/cpptoc/download_image_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/download_image_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=14b41457d2b33e31d9be5815c704c28420ec6b24$ +// $hash=63e1b0a0910dd98821c2ecea2bd70b4e09ebe5e6$ // #include "libcef_dll/cpptoc/download_image_callback_cpptoc.h" @@ -62,10 +62,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefDownloadImageCallbackCppToC, + CefDownloadImageCallback, + cef_download_image_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/download_item_callback_cpptoc.cc b/libcef_dll/cpptoc/download_item_callback_cpptoc.cc index 6eddb5820..f7e0d8225 100644 --- a/libcef_dll/cpptoc/download_item_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/download_item_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=04aede4dd7d7d8ab90fa4d27537f1dd4c19501e7$ +// $hash=0530e913a8935e43d7b073e4c020f9d7b0ddfd53$ // #include "libcef_dll/cpptoc/download_item_callback_cpptoc.h" @@ -77,10 +77,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefDownloadItemCallbackCppToC, + CefDownloadItemCallback, + cef_download_item_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/download_item_cpptoc.cc b/libcef_dll/cpptoc/download_item_cpptoc.cc index afa5cd9d9..fb1472139 100644 --- a/libcef_dll/cpptoc/download_item_cpptoc.cc +++ b/libcef_dll/cpptoc/download_item_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8406edcb1d9c418e704ebbc3ccad44dc4ca84244$ +// $hash=68c4a0c691991e8af81df1bfc6bf08f57ee984ab$ // #include "libcef_dll/cpptoc/download_item_cpptoc.h" @@ -307,7 +307,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_download_item_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/drag_data_cpptoc.cc b/libcef_dll/cpptoc/drag_data_cpptoc.cc index 0d5811a7d..55aacff08 100644 --- a/libcef_dll/cpptoc/drag_data_cpptoc.cc +++ b/libcef_dll/cpptoc/drag_data_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=99a670d8fc60380f091a97bc9e8bb35d0e1e9c02$ +// $hash=7074cbfd68d6772e8ad944ed2ca857e70099b73c$ // #include "libcef_dll/cpptoc/drag_data_cpptoc.h" @@ -449,9 +449,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/drag_handler_cpptoc.cc b/libcef_dll/cpptoc/drag_handler_cpptoc.cc index 8cbc6f54d..a356a6f45 100644 --- a/libcef_dll/cpptoc/drag_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/drag_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f56cb888482bc594b34fb05729c0cab9577c306e$ +// $hash=8b77d3c2c5f135905b2623b9b931e5fbbdc2533a$ // #include "libcef_dll/cpptoc/drag_handler_cpptoc.h" @@ -101,7 +101,8 @@ CefCppToCRefCounted:: template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_drag_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/end_tracing_callback_cpptoc.cc b/libcef_dll/cpptoc/end_tracing_callback_cpptoc.cc index 4901bd4cc..2d17ebd17 100644 --- a/libcef_dll/cpptoc/end_tracing_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/end_tracing_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9a1b77364fd21f18c0bdbdec1b7abca0f6867323$ +// $hash=0edd074e9e43719ec791d94129c098081da2375b$ // #include "libcef_dll/cpptoc/end_tracing_callback_cpptoc.h" @@ -57,10 +57,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/file_dialog_callback_cpptoc.cc b/libcef_dll/cpptoc/file_dialog_callback_cpptoc.cc index f13ed799a..7a88632f4 100644 --- a/libcef_dll/cpptoc/file_dialog_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/file_dialog_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ab0b610cd180d3930cfcea8c97ce960b1c6cfe43$ +// $hash=fd0465af60b105e90d1bce2819795b6cd4c4a1ef$ // #include "libcef_dll/cpptoc/file_dialog_callback_cpptoc.h" @@ -76,10 +76,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/find_handler_cpptoc.cc b/libcef_dll/cpptoc/find_handler_cpptoc.cc index a955d7545..03e39620c 100644 --- a/libcef_dll/cpptoc/find_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/find_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4c7bf04684310507e699c18a80c71d0c9a852ffc$ +// $hash=c238cf6ea739c44c8a9ef78812da0a2be57aac93$ // #include "libcef_dll/cpptoc/find_handler_cpptoc.h" @@ -69,7 +69,8 @@ CefCppToCRefCounted:: template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_find_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/focus_handler_cpptoc.cc b/libcef_dll/cpptoc/focus_handler_cpptoc.cc index 59ab6c292..1f51e036e 100644 --- a/libcef_dll/cpptoc/focus_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/focus_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d3d4fbf680412ca26d5803ffd269dea1e06ed388$ +// $hash=5e9bcff341867aa58f89af0d53223402929b6a4d$ // #include "libcef_dll/cpptoc/focus_handler_cpptoc.h" @@ -98,7 +98,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_focus_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/frame_cpptoc.cc b/libcef_dll/cpptoc/frame_cpptoc.cc index 40ea40c06..7a550ac18 100644 --- a/libcef_dll/cpptoc/frame_cpptoc.cc +++ b/libcef_dll/cpptoc/frame_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=de121cd59bc925b4b2adb03d97965fe19a22223f$ +// $hash=5c958b1d8f4d72e22d612531acfd34ef5fdc6bd8$ // #include "libcef_dll/cpptoc/frame_cpptoc.h" @@ -402,7 +402,8 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/geolocation_callback_cpptoc.cc b/libcef_dll/cpptoc/geolocation_callback_cpptoc.cc index a5890f485..d5860fdd3 100644 --- a/libcef_dll/cpptoc/geolocation_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/geolocation_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a85a5f77deefd5cab463110ab679d49f90bf7ab4$ +// $hash=ad39d3c5bc8d04c357af649d5af0008ed43de150$ // #include "libcef_dll/cpptoc/geolocation_callback_cpptoc.h" @@ -50,10 +50,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/geolocation_handler_cpptoc.cc b/libcef_dll/cpptoc/geolocation_handler_cpptoc.cc index efc8c30a3..837c8abc5 100644 --- a/libcef_dll/cpptoc/geolocation_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/geolocation_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8e37dbdeb9b4552a0c19c34e0ad7855a1c5ef709$ +// $hash=ce7a038d21350b0d6379a9bdc0cb10cf32ff69cc$ // #include "libcef_dll/cpptoc/geolocation_handler_cpptoc.h" @@ -96,10 +96,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/get_geolocation_callback_cpptoc.cc b/libcef_dll/cpptoc/get_geolocation_callback_cpptoc.cc index db87c441d..aca3ed5ca 100644 --- a/libcef_dll/cpptoc/get_geolocation_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/get_geolocation_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5609fad7a14bad55ece61758326b8fdb8a20ac2c$ +// $hash=e61dc433c36e5cdcd658328701b69cfcbb58df38$ // #include "libcef_dll/cpptoc/get_geolocation_callback_cpptoc.h" @@ -60,10 +60,10 @@ CefCppToCRefCounted -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefGetGeolocationCallbackCppToC, + CefGetGeolocationCallback, + cef_get_geolocation_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/image_cpptoc.cc b/libcef_dll/cpptoc/image_cpptoc.cc index 679658afc..f9add9b84 100644 --- a/libcef_dll/cpptoc/image_cpptoc.cc +++ b/libcef_dll/cpptoc/image_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c5a593e30b9f8b61aeb4d07f38e471be0cc521c0$ +// $hash=80c744fd24fbafd3813e21ca765b88d6fdb0a0c6$ // #include "libcef_dll/cpptoc/image_cpptoc.h" @@ -396,7 +396,8 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/jsdialog_callback_cpptoc.cc b/libcef_dll/cpptoc/jsdialog_callback_cpptoc.cc index 6a7ec3f83..3f337ae35 100644 --- a/libcef_dll/cpptoc/jsdialog_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/jsdialog_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=05be760ce7d3e0aaba329f7cfe3b83b7d6b94699$ +// $hash=74e47f4c0f6feef34d2ea5721d4714e91b9b3789$ // #include "libcef_dll/cpptoc/jsdialog_callback_cpptoc.h" @@ -55,8 +55,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_jsdialog_callback_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/jsdialog_handler_cpptoc.cc b/libcef_dll/cpptoc/jsdialog_handler_cpptoc.cc index 06f53153c..7872ea1a7 100644 --- a/libcef_dll/cpptoc/jsdialog_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/jsdialog_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=04255b222eef72aeea67720233b7b0b7b9000365$ +// $hash=ee5e4d79a9cfc731aa4fa5b543fadf181d133841$ // #include "libcef_dll/cpptoc/jsdialog_handler_cpptoc.h" @@ -158,8 +158,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_jsdialog_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/keyboard_handler_cpptoc.cc b/libcef_dll/cpptoc/keyboard_handler_cpptoc.cc index 127f609cb..3fda5b567 100644 --- a/libcef_dll/cpptoc/keyboard_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/keyboard_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ab912d3ba520a44af12ce5d8a1c359c29f850c87$ +// $hash=7ea387303c315f48e2a596bca0c549f47da8aa81$ // #include "libcef_dll/cpptoc/keyboard_handler_cpptoc.h" @@ -119,8 +119,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_keyboard_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/life_span_handler_cpptoc.cc b/libcef_dll/cpptoc/life_span_handler_cpptoc.cc index 1a059afc6..ab8e69f83 100644 --- a/libcef_dll/cpptoc/life_span_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/life_span_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a2d97e44c5404e9694b436eb590979759cc84972$ +// $hash=5ce784d1e871c1bde0423c97c8ad5d8d06a2686b$ // #include "libcef_dll/cpptoc/life_span_handler_cpptoc.h" @@ -203,8 +203,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_life_span_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/list_value_cpptoc.cc b/libcef_dll/cpptoc/list_value_cpptoc.cc index 840031253..a1598fd84 100644 --- a/libcef_dll/cpptoc/list_value_cpptoc.cc +++ b/libcef_dll/cpptoc/list_value_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=115f89a2489929f54c8cf1565dadbd2b470cf6a4$ +// $hash=0998e56d3d507174707a740571325afb6278be09$ // #include "libcef_dll/cpptoc/list_value_cpptoc.h" @@ -537,9 +537,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/load_handler_cpptoc.cc b/libcef_dll/cpptoc/load_handler_cpptoc.cc index fe9fafc66..03f735374 100644 --- a/libcef_dll/cpptoc/load_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/load_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=48f3eb139316785cc31cb70a1af280f2355a228b$ +// $hash=a366d3e6c44d16d536f1cbe2460647ece21ee8a5$ // #include "libcef_dll/cpptoc/load_handler_cpptoc.h" @@ -145,7 +145,8 @@ CefCppToCRefCounted:: template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_load_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/menu_model_cpptoc.cc b/libcef_dll/cpptoc/menu_model_cpptoc.cc index aefa3b29f..71a3b0a35 100644 --- a/libcef_dll/cpptoc/menu_model_cpptoc.cc +++ b/libcef_dll/cpptoc/menu_model_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9ebac77c8ad6c56ac04eb765884d9c192d2da10c$ +// $hash=8939d5698acfbbf9191fbc375317399d338973c4$ // #include "libcef_dll/cpptoc/menu_model_cpptoc.h" @@ -1176,9 +1176,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/menu_model_delegate_cpptoc.cc b/libcef_dll/cpptoc/menu_model_delegate_cpptoc.cc index 81f28eb4a..343f3b36b 100644 --- a/libcef_dll/cpptoc/menu_model_delegate_cpptoc.cc +++ b/libcef_dll/cpptoc/menu_model_delegate_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8df90eb582df20061513fb80264da53b9d97849b$ +// $hash=1177066a4e47d71855efa3103f191a5f3ef78100$ // #include "libcef_dll/cpptoc/menu_model_delegate_cpptoc.h" @@ -196,10 +196,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/navigation_entry_cpptoc.cc b/libcef_dll/cpptoc/navigation_entry_cpptoc.cc index 49fa94e5e..a01160a97 100644 --- a/libcef_dll/cpptoc/navigation_entry_cpptoc.cc +++ b/libcef_dll/cpptoc/navigation_entry_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=621ee97874f724bf57e27cfcfd4731c161d0b353$ +// $hash=05038184d92d97f87250a8d0fb9a0a042a9bbbe0$ // #include "libcef_dll/cpptoc/navigation_entry_cpptoc.h" @@ -202,8 +202,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_navigation_entry_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.cc b/libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.cc index 326bdae84..343e45a48 100644 --- a/libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.cc +++ b/libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=06ab08bb628eb7ec388604c9b393e9e9e1200435$ +// $hash=b5d9fcabea4586fb3c8e30c1fc6c16a99a3ad08b$ // #include "libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.h" @@ -64,10 +64,10 @@ CefCppToCRefCounted -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefNavigationEntryVisitorCppToC, + CefNavigationEntryVisitor, + cef_navigation_entry_visitor_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/pdf_print_callback_cpptoc.cc b/libcef_dll/cpptoc/pdf_print_callback_cpptoc.cc index a189038d7..cd4619c96 100644 --- a/libcef_dll/cpptoc/pdf_print_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/pdf_print_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6f723c637ef687429368a60f58037a36e5a5ce89$ +// $hash=3e378421cd5ab5368bc617ec0a7fee51c91c6b19$ // #include "libcef_dll/cpptoc/pdf_print_callback_cpptoc.h" @@ -59,8 +59,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_pdf_print_callback_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/post_data_cpptoc.cc b/libcef_dll/cpptoc/post_data_cpptoc.cc index e94a459a4..6c905fe5b 100644 --- a/libcef_dll/cpptoc/post_data_cpptoc.cc +++ b/libcef_dll/cpptoc/post_data_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c4a9a8f009c2ada8fb9756462e49f7f65f931056$ +// $hash=4b3926cc6e0211a6d1ba061e2e3788ee79afcc27$ // #include "libcef_dll/cpptoc/post_data_cpptoc.h" @@ -188,9 +188,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/post_data_element_cpptoc.cc b/libcef_dll/cpptoc/post_data_element_cpptoc.cc index e934a6f4b..9fcaae9b9 100644 --- a/libcef_dll/cpptoc/post_data_element_cpptoc.cc +++ b/libcef_dll/cpptoc/post_data_element_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=34bc8098c254fc94e374b5ff47f6ffc065c87336$ +// $hash=1f66c831b6028a182de44b3a0fb60d27d53aa276$ // #include "libcef_dll/cpptoc/post_data_element_cpptoc.h" @@ -188,8 +188,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_post_data_element_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/print_dialog_callback_cpptoc.cc b/libcef_dll/cpptoc/print_dialog_callback_cpptoc.cc index 8999ecdb6..e812aab5c 100644 --- a/libcef_dll/cpptoc/print_dialog_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/print_dialog_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=12bfad16bf7ce5f2a54f06cb48fa49df496bf9a9$ +// $hash=5fb1f8e319ba997bb5dc5c2546c2f0c2b24cc0ee$ // #include "libcef_dll/cpptoc/print_dialog_callback_cpptoc.h" @@ -71,10 +71,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefPrintDialogCallbackCppToC, + CefPrintDialogCallback, + cef_print_dialog_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/print_handler_cpptoc.cc b/libcef_dll/cpptoc/print_handler_cpptoc.cc index aee68793a..f276e1589 100644 --- a/libcef_dll/cpptoc/print_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/print_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=eba15f068169c3d986c5b44ed55aa472f47a9081$ +// $hash=ebac323b529f8e17a25744c15795a8951658360c$ // #include "libcef_dll/cpptoc/print_handler_cpptoc.h" @@ -192,7 +192,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_print_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/print_job_callback_cpptoc.cc b/libcef_dll/cpptoc/print_job_callback_cpptoc.cc index 9c1a0d619..854e799ad 100644 --- a/libcef_dll/cpptoc/print_job_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/print_job_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a19e32f4c64b0b5f641fec8a31de96f91b7bd982$ +// $hash=1d3a68b8e7eb18502a75d3358446b799ed9abe07$ // #include "libcef_dll/cpptoc/print_job_callback_cpptoc.h" @@ -52,8 +52,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_print_job_callback_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/print_settings_cpptoc.cc b/libcef_dll/cpptoc/print_settings_cpptoc.cc index 0155d753b..f8c2c3535 100644 --- a/libcef_dll/cpptoc/print_settings_cpptoc.cc +++ b/libcef_dll/cpptoc/print_settings_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4a7de54e64d113db827af72ab032fe3803773e1a$ +// $hash=ee173ed1052a341604fe422e6ab8efc5d3c1f2c4$ // #include "libcef_dll/cpptoc/print_settings_cpptoc.h" @@ -454,7 +454,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_print_settings_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/process_message_cpptoc.cc b/libcef_dll/cpptoc/process_message_cpptoc.cc index 927bb453e..c13271010 100644 --- a/libcef_dll/cpptoc/process_message_cpptoc.cc +++ b/libcef_dll/cpptoc/process_message_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=665bb7026a3b2824cbb98a8904d85957b0cf3804$ +// $hash=08119525638c7d00c2668dfd73f96933c7fc9b50$ // #include "libcef_dll/cpptoc/process_message_cpptoc.h" @@ -140,7 +140,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_process_message_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/read_handler_cpptoc.cc b/libcef_dll/cpptoc/read_handler_cpptoc.cc index 2ac4be860..785500744 100644 --- a/libcef_dll/cpptoc/read_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/read_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f92e2d8dea0ebbb5d0e2bd31cd7e8322db6e95fc$ +// $hash=4706e2b6b731c9db45eaa330b4432440ab8886d7$ // #include "libcef_dll/cpptoc/read_handler_cpptoc.h" @@ -121,7 +121,8 @@ CefCppToCRefCounted:: template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_read_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/register_cdm_callback_cpptoc.cc b/libcef_dll/cpptoc/register_cdm_callback_cpptoc.cc index 98e5c16f1..04da9efcf 100644 --- a/libcef_dll/cpptoc/register_cdm_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/register_cdm_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=22598eaff6bdb3ebecc52d1161ed222203216963$ +// $hash=d07ba724ed4394bf4903b05bd37d8b3426ca7ebd$ // #include "libcef_dll/cpptoc/register_cdm_callback_cpptoc.h" @@ -56,10 +56,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefRegisterCdmCallbackCppToC, + CefRegisterCdmCallback, + cef_register_cdm_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/render_handler_cpptoc.cc b/libcef_dll/cpptoc/render_handler_cpptoc.cc index e26ebeb21..8c3b81a69 100644 --- a/libcef_dll/cpptoc/render_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/render_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7d76e5dd6c0eccb57efb9a5202688705df7b5c16$ +// $hash=b25fb4cd7ab674b8366afabe6340d732a04d3206$ // #include "libcef_dll/cpptoc/render_handler_cpptoc.h" @@ -445,7 +445,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_render_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/render_process_handler_cpptoc.cc b/libcef_dll/cpptoc/render_process_handler_cpptoc.cc index 5556f8c3b..064287841 100644 --- a/libcef_dll/cpptoc/render_process_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/render_process_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=983c18727fdd4116f5b98eb9d1921d58f1511c76$ +// $hash=05966899fc7edb30c70adcf7c04e03ef69ea47cc$ // #include "libcef_dll/cpptoc/render_process_handler_cpptoc.h" @@ -332,10 +332,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefRenderProcessHandlerCppToC, + CefRenderProcessHandler, + cef_render_process_handler_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/request_callback_cpptoc.cc b/libcef_dll/cpptoc/request_callback_cpptoc.cc index a8462a045..4973ce9e2 100644 --- a/libcef_dll/cpptoc/request_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/request_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7f23d6a5af6381c210dad9505f4fd2b36bb27b9a$ +// $hash=0d80f7272be1943a0e94887fe882f01166247ef8$ // #include "libcef_dll/cpptoc/request_callback_cpptoc.h" @@ -65,8 +65,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_request_callback_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/request_context_cpptoc.cc b/libcef_dll/cpptoc/request_context_cpptoc.cc index 2be35fe5b..0bc0c6242 100644 --- a/libcef_dll/cpptoc/request_context_cpptoc.cc +++ b/libcef_dll/cpptoc/request_context_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=247a6ee7f7477a1a6ebfc8702b0d13a51b5310c5$ +// $hash=12152d9a0c2f7acf5c7ac9d0eb2facc83c00d688$ // #include "libcef_dll/cpptoc/request_context_cpptoc.h" @@ -488,7 +488,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_request_context_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/request_context_handler_cpptoc.cc b/libcef_dll/cpptoc/request_context_handler_cpptoc.cc index 9cb22e3f2..bb43e7680 100644 --- a/libcef_dll/cpptoc/request_context_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/request_context_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2bc0696da2c14f967c6b16e3f78e1e4479ed50d1$ +// $hash=9f8701b130114d4d36b9df1045dc65b899f7141c$ // #include "libcef_dll/cpptoc/request_context_handler_cpptoc.h" @@ -96,10 +96,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefRequestContextHandlerCppToC, + CefRequestContextHandler, + cef_request_context_handler_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/request_cpptoc.cc b/libcef_dll/cpptoc/request_cpptoc.cc index d5f39f9d7..4ce183a22 100644 --- a/libcef_dll/cpptoc/request_cpptoc.cc +++ b/libcef_dll/cpptoc/request_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ec22bd815e23e3643d6ffb3db5573d6b24ea275c$ +// $hash=a6faf919c7472a42f9cf36ecf28a812ad06e7c4e$ // #include "libcef_dll/cpptoc/request_cpptoc.h" @@ -407,9 +407,9 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/request_handler_cpptoc.cc b/libcef_dll/cpptoc/request_handler_cpptoc.cc index be03b1aa7..8b676f5b5 100644 --- a/libcef_dll/cpptoc/request_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/request_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=debd32c1e6bb7d1caca659f93e1a6fbb0e5018a9$ +// $hash=fc5f3eef3a1ac0e650a08fd0b63fdf834c3bc99f$ // #include "libcef_dll/cpptoc/request_handler_cpptoc.h" @@ -628,7 +628,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_request_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/resolve_callback_cpptoc.cc b/libcef_dll/cpptoc/resolve_callback_cpptoc.cc index 88325fb53..dc3924189 100644 --- a/libcef_dll/cpptoc/resolve_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/resolve_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2055b8206165fb8583b6d7659366d438913f3c25$ +// $hash=dcd5b947f474c1b30b5d8b8e4b331c5b8d660edc$ // #include "libcef_dll/cpptoc/resolve_callback_cpptoc.h" @@ -61,8 +61,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_resolve_callback_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/resource_bundle_cpptoc.cc b/libcef_dll/cpptoc/resource_bundle_cpptoc.cc index 07a8d2741..c12efeb28 100644 --- a/libcef_dll/cpptoc/resource_bundle_cpptoc.cc +++ b/libcef_dll/cpptoc/resource_bundle_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=cad0f658e2f2c93fefbe5abd77135a94cf57f7d9$ +// $hash=84fdc930bc269b6718fdbb3fef115c691de4f47d$ // #include "libcef_dll/cpptoc/resource_bundle_cpptoc.h" @@ -151,7 +151,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_resource_bundle_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/resource_bundle_handler_cpptoc.cc b/libcef_dll/cpptoc/resource_bundle_handler_cpptoc.cc index 2a286fd2d..ded9902eb 100644 --- a/libcef_dll/cpptoc/resource_bundle_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/resource_bundle_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=47339f94c600cd510238e5994ac25684fe82fc14$ +// $hash=14757f24d9cb1ca95739bfb942e1c011d1bc92a9$ // #include "libcef_dll/cpptoc/resource_bundle_handler_cpptoc.h" @@ -148,10 +148,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefResourceBundleHandlerCppToC, + CefResourceBundleHandler, + cef_resource_bundle_handler_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/resource_handler_cpptoc.cc b/libcef_dll/cpptoc/resource_handler_cpptoc.cc index a07681153..f67deeb3d 100644 --- a/libcef_dll/cpptoc/resource_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/resource_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=71288eacf082e55ff7e9f827abacd855c20460e4$ +// $hash=e5ec12b632b53457ea3fee7ec5088ae8f939d8bf$ // #include "libcef_dll/cpptoc/resource_handler_cpptoc.h" @@ -213,8 +213,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_resource_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/response_cpptoc.cc b/libcef_dll/cpptoc/response_cpptoc.cc index a1e6dd6d7..d2bed7de5 100644 --- a/libcef_dll/cpptoc/response_cpptoc.cc +++ b/libcef_dll/cpptoc/response_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8c78d1549f74bf28ef06fdfa0d4b0d897788f927$ +// $hash=a6df8dec83137f421b6c276bdf1867ba3d98a8d7$ // #include "libcef_dll/cpptoc/response_cpptoc.h" @@ -251,9 +251,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/response_filter_cpptoc.cc b/libcef_dll/cpptoc/response_filter_cpptoc.cc index a700f5df1..7d48e874d 100644 --- a/libcef_dll/cpptoc/response_filter_cpptoc.cc +++ b/libcef_dll/cpptoc/response_filter_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=86e0b6a1e669437f51917386ce57d4111178fe59$ +// $hash=add253ed8b10b0894c57c9459720a39699afe34d$ // #include "libcef_dll/cpptoc/response_filter_cpptoc.h" @@ -105,7 +105,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_response_filter_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/run_context_menu_callback_cpptoc.cc b/libcef_dll/cpptoc/run_context_menu_callback_cpptoc.cc index 3972f5492..edbf2be59 100644 --- a/libcef_dll/cpptoc/run_context_menu_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/run_context_menu_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=11b53a9b52b929cc12d29ed4b73108b2ebab3628$ +// $hash=176a131e18d8eaa802a723d60b54ca47ceab07b7$ // #include "libcef_dll/cpptoc/run_context_menu_callback_cpptoc.h" @@ -65,10 +65,10 @@ CefCppToCRefCounted -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefRunContextMenuCallbackCppToC, + CefRunContextMenuCallback, + cef_run_context_menu_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.cc b/libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.cc index e286f080c..47e211d83 100644 --- a/libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1522ca444b68114d64bc346d784639544f400f8f$ +// $hash=83fcf9fdedeee9ae48661c128b95bbd382fbbc82$ // #include "libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.h" @@ -64,10 +64,10 @@ CefCppToCRefCounted -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefRunFileDialogCallbackCppToC, + CefRunFileDialogCallback, + cef_run_file_dialog_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/scheme_handler_factory_cpptoc.cc b/libcef_dll/cpptoc/scheme_handler_factory_cpptoc.cc index f0f842aea..042c31b0a 100644 --- a/libcef_dll/cpptoc/scheme_handler_factory_cpptoc.cc +++ b/libcef_dll/cpptoc/scheme_handler_factory_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=815287a25120b02a67c6a04cd84132cf7f746f92$ +// $hash=b7c7f06409f90a2828a6343f4582c16d26f0a175$ // #include "libcef_dll/cpptoc/scheme_handler_factory_cpptoc.h" @@ -74,10 +74,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefSchemeHandlerFactoryCppToC, + CefSchemeHandlerFactory, + cef_scheme_handler_factory_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/scheme_registrar_cpptoc.cc b/libcef_dll/cpptoc/scheme_registrar_cpptoc.cc index 219d2831c..f7b80d930 100644 --- a/libcef_dll/cpptoc/scheme_registrar_cpptoc.cc +++ b/libcef_dll/cpptoc/scheme_registrar_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0eb1f2d2f28463f3ca3b38b4bdfea425c2a1d4c9$ +// $hash=c1c56c92c4dc4700e774f8fbec9f635440ea9e6c$ // #include "libcef_dll/cpptoc/scheme_registrar_cpptoc.h" @@ -80,7 +80,8 @@ CefRawPtr CefCppToCScoped< template <> base::AtomicRefCount CefCppToCScoped::DebugObjCt = 0; + cef_scheme_registrar_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.cc b/libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.cc index a5461145f..0470b9caf 100644 --- a/libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=71428694b408ac2be29fd0c14aff9339a01cf3bf$ +// $hash=99c11f27ac6e81a3f44957ff6a136090a88d89cb$ // #include "libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.h" @@ -56,11 +56,10 @@ CefCppToCRefCounted -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = - 0; +base::AtomicRefCount CefCppToCRefCounted< + CefSelectClientCertificateCallbackCppToC, + CefSelectClientCertificateCallback, + cef_select_client_certificate_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/set_cookie_callback_cpptoc.cc b/libcef_dll/cpptoc/set_cookie_callback_cpptoc.cc index b83f94814..c1aef2ee3 100644 --- a/libcef_dll/cpptoc/set_cookie_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/set_cookie_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4a2ec304178530684d11e8b97ea2cfbd209d2f1e$ +// $hash=843899ae8ed15cf957ab8289ee917d48c1b2080f$ // #include "libcef_dll/cpptoc/set_cookie_callback_cpptoc.h" @@ -51,10 +51,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/sslinfo_cpptoc.cc b/libcef_dll/cpptoc/sslinfo_cpptoc.cc index b1df51019..aebd2b5be 100644 --- a/libcef_dll/cpptoc/sslinfo_cpptoc.cc +++ b/libcef_dll/cpptoc/sslinfo_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6b0126f9d5fcea34f38d780abeb1fe16659731b8$ +// $hash=0a541e7450b71d3ef533399c0ff45d7e9bea7cd3$ // #include "libcef_dll/cpptoc/sslinfo_cpptoc.h" @@ -70,9 +70,9 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/sslstatus_cpptoc.cc b/libcef_dll/cpptoc/sslstatus_cpptoc.cc index aef2662ec..a07607f65 100644 --- a/libcef_dll/cpptoc/sslstatus_cpptoc.cc +++ b/libcef_dll/cpptoc/sslstatus_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5aef2343a86b6a3b67386998a68c9729b5c0eaed$ +// $hash=bddcbd095ff5e3b5f0fd2c4e5a52a2574a4fcd4f$ // #include "libcef_dll/cpptoc/sslstatus_cpptoc.h" @@ -117,9 +117,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/stream_reader_cpptoc.cc b/libcef_dll/cpptoc/stream_reader_cpptoc.cc index c8302cf72..146414fe5 100644 --- a/libcef_dll/cpptoc/stream_reader_cpptoc.cc +++ b/libcef_dll/cpptoc/stream_reader_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=47935fef33a2eb69943e8ff9d26a76f1c25861c0$ +// $hash=7a5bfeae879918806bfa4e131d547140c0e7608a$ // #include "libcef_dll/cpptoc/stream_reader_cpptoc.h" @@ -177,7 +177,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_stream_reader_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/stream_writer_cpptoc.cc b/libcef_dll/cpptoc/stream_writer_cpptoc.cc index d4e912ec6..c6aa8fca3 100644 --- a/libcef_dll/cpptoc/stream_writer_cpptoc.cc +++ b/libcef_dll/cpptoc/stream_writer_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=17030768bc7b301f326cfd2a9c4b065408c8fd63$ +// $hash=975034ba96a9c5b1fbe3925f3c53ec083ae87b31$ // #include "libcef_dll/cpptoc/stream_writer_cpptoc.h" @@ -160,7 +160,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_stream_writer_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/string_visitor_cpptoc.cc b/libcef_dll/cpptoc/string_visitor_cpptoc.cc index 6a9bc918b..c1f1e4efb 100644 --- a/libcef_dll/cpptoc/string_visitor_cpptoc.cc +++ b/libcef_dll/cpptoc/string_visitor_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c778771a654d82fde17dd52d7885f647945dba8f$ +// $hash=90d60ea4d8a4674cac8c3086ee7383bb5c19ec18$ // #include "libcef_dll/cpptoc/string_visitor_cpptoc.h" @@ -53,7 +53,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_string_visitor_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/task_cpptoc.cc b/libcef_dll/cpptoc/task_cpptoc.cc index d0b130e1b..82cb9b7c1 100644 --- a/libcef_dll/cpptoc/task_cpptoc.cc +++ b/libcef_dll/cpptoc/task_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=208bb3fedcf86b782a03fd64c527abcf05f7b297$ +// $hash=ec98bad79e77666c59f2745c54375eefb0c568b5$ // #include "libcef_dll/cpptoc/task_cpptoc.h" @@ -49,7 +49,8 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/task_runner_cpptoc.cc b/libcef_dll/cpptoc/task_runner_cpptoc.cc index 549de4059..a89269f0a 100644 --- a/libcef_dll/cpptoc/task_runner_cpptoc.cc +++ b/libcef_dll/cpptoc/task_runner_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f5305fa3abe2638b3a079e76ab9f8c0a4d2a259d$ +// $hash=04f7d323b569e8093f338fa9ef96dd91bef4d4ce$ // #include "libcef_dll/cpptoc/task_runner_cpptoc.h" @@ -156,9 +156,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/test/translator_test_cpptoc.cc b/libcef_dll/cpptoc/test/translator_test_cpptoc.cc index 60cfb9bff..5790023d3 100644 --- a/libcef_dll/cpptoc/test/translator_test_cpptoc.cc +++ b/libcef_dll/cpptoc/test/translator_test_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=dd909074a7d2032d5fbc4a700dfaecf00a198f42$ +// $hash=b8bf57f88934cf9b14a6380d3d72c13274d6645b$ // #include "libcef_dll/cpptoc/test/translator_test_cpptoc.h" @@ -1523,7 +1523,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_translator_test_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.cc b/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.cc index 7b578df60..e55c94d2f 100644 --- a/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.cc +++ b/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2d4f7b4eba0e67faa616e91a591872d7ca5c9902$ +// $hash=a0d7621a6ebd0b238e2bcc4d983061a9ae0e9528$ // #include "libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.h" @@ -79,7 +79,7 @@ template <> base::AtomicRefCount CefCppToCRefCounted< CefTranslatorTestRefPtrClientChildCppToC, CefTranslatorTestRefPtrClientChild, - cef_translator_test_ref_ptr_client_child_t>::DebugObjCt = 0; + cef_translator_test_ref_ptr_client_child_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.cc b/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.cc index c30633bae..80306adbb 100644 --- a/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.cc +++ b/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b04a2cadf7325090a53b435cf777173216802ec1$ +// $hash=2150a6685059667ef3e6b870d9400b1b3e2d679b$ // #include "libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.h" @@ -59,10 +59,10 @@ CefCppToCRefCounted -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefTranslatorTestRefPtrClientCppToC, + CefTranslatorTestRefPtrClient, + cef_translator_test_ref_ptr_client_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.cc b/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.cc index 40bf9b6e3..306f301f8 100644 --- a/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.cc +++ b/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c56ee9df7fe88c830a7e0280908e1c56d450c974$ +// $hash=33afb37dd24a924216cd3803908171f8379562e4$ // #include "libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.h" @@ -173,7 +173,8 @@ template <> base::AtomicRefCount CefCppToCRefCounted< CefTranslatorTestRefPtrLibraryChildChildCppToC, CefTranslatorTestRefPtrLibraryChildChild, - cef_translator_test_ref_ptr_library_child_child_t>::DebugObjCt = 0; + cef_translator_test_ref_ptr_library_child_child_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.cc b/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.cc index 0fe8ab162..048a4ee8d 100644 --- a/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.cc +++ b/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ddb7af27ed3901230f51b510f706e1c38e9c18b5$ +// $hash=0eddc8cd48b1e8a0d049eb4fb8f7d08472cd94f5$ // #include "libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.h" @@ -130,7 +130,7 @@ template <> base::AtomicRefCount CefCppToCRefCounted< CefTranslatorTestRefPtrLibraryChildCppToC, CefTranslatorTestRefPtrLibraryChild, - cef_translator_test_ref_ptr_library_child_t>::DebugObjCt = 0; + cef_translator_test_ref_ptr_library_child_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.cc b/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.cc index 2a8c6ac66..1fc630a90 100644 --- a/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.cc +++ b/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4d312527991e076c9fceef16ba645c103b074d80$ +// $hash=d2b7b1cf99643041e1b3b4fbb46c2b759cc20c38$ // #include "libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.h" @@ -93,10 +93,10 @@ CefCppToCRefCounted -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefTranslatorTestRefPtrLibraryCppToC, + CefTranslatorTestRefPtrLibrary, + cef_translator_test_ref_ptr_library_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.cc b/libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.cc index 62c5a7d11..af1b7a789 100644 --- a/libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.cc +++ b/libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=34501f81cbf83f221b8a0ce0a4ccdc68e5aa1450$ +// $hash=4c93372779a4d56648ed7721e655687c52fcb3dd$ // #include "libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.h" @@ -87,10 +87,10 @@ CefCppToCScoped -base::AtomicRefCount - CefCppToCScoped::DebugObjCt = 0; +base::AtomicRefCount CefCppToCScoped< + CefTranslatorTestScopedClientChildCppToC, + CefTranslatorTestScopedClientChild, + cef_translator_test_scoped_client_child_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.cc b/libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.cc index f8ead837b..24c922b2a 100644 --- a/libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.cc +++ b/libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=92dd8bbaed61f94cb42dd4eddcd5345b0d619dc7$ +// $hash=3a7f32cc5c3a0e1ffe8f81167d44318c9d8eec41$ // #include "libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.h" @@ -76,10 +76,10 @@ CefCppToCScoped -base::AtomicRefCount - CefCppToCScoped::DebugObjCt = 0; +base::AtomicRefCount CefCppToCScoped< + CefTranslatorTestScopedClientCppToC, + CefTranslatorTestScopedClient, + cef_translator_test_scoped_client_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.cc b/libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.cc index 0ccb09749..363a2156b 100644 --- a/libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.cc +++ b/libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5c83a33a42a843767e80850f18908237db7754ce$ +// $hash=1e6fb66a15d8ffb7cfc044a5703d1728d8bb95a6$ // #include "libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.h" @@ -183,7 +183,8 @@ template <> base::AtomicRefCount CefCppToCScoped< CefTranslatorTestScopedLibraryChildChildCppToC, CefTranslatorTestScopedLibraryChildChild, - cef_translator_test_scoped_library_child_child_t>::DebugObjCt = 0; + cef_translator_test_scoped_library_child_child_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.cc b/libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.cc index 8e5b79091..4369fb918 100644 --- a/libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.cc +++ b/libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=40623df7ec62d989294f7c575e50bc3cd78285d7$ +// $hash=d45f6804a361dbde4ad8a2243bad7d2090c43b28$ // #include "libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.h" @@ -144,10 +144,10 @@ CefCppToCScoped -base::AtomicRefCount - CefCppToCScoped::DebugObjCt = 0; +base::AtomicRefCount CefCppToCScoped< + CefTranslatorTestScopedLibraryChildCppToC, + CefTranslatorTestScopedLibraryChild, + cef_translator_test_scoped_library_child_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.cc b/libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.cc index 7a847aeb8..7f4343d8c 100644 --- a/libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.cc +++ b/libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=33161851f6d712f15b49b70bb0fc0f06afda83bc$ +// $hash=780a1c691ab2c04d2e987a456c4735fc5d16412a$ // #include "libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.h" @@ -116,10 +116,10 @@ CefCppToCScoped -base::AtomicRefCount - CefCppToCScoped::DebugObjCt = 0; +base::AtomicRefCount CefCppToCScoped< + CefTranslatorTestScopedLibraryCppToC, + CefTranslatorTestScopedLibrary, + cef_translator_test_scoped_library_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/thread_cpptoc.cc b/libcef_dll/cpptoc/thread_cpptoc.cc index 21a75ba3b..537de7e78 100644 --- a/libcef_dll/cpptoc/thread_cpptoc.cc +++ b/libcef_dll/cpptoc/thread_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f1b350a92e8fe8cd6d8b81d807e0da11691b3167$ +// $hash=015e42fff08d1608e37742507742111f361e7294$ // #include "libcef_dll/cpptoc/thread_cpptoc.h" @@ -120,8 +120,8 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = - 0; + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/urlrequest_client_cpptoc.cc b/libcef_dll/cpptoc/urlrequest_client_cpptoc.cc index a5a45a898..3492504a8 100644 --- a/libcef_dll/cpptoc/urlrequest_client_cpptoc.cc +++ b/libcef_dll/cpptoc/urlrequest_client_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3e172d59ae9f9743527b0bce8c29dc7e14c48033$ +// $hash=1cf4b573aaa820063dbaf38377c6af7405ffc662$ // #include "libcef_dll/cpptoc/urlrequest_client_cpptoc.h" @@ -164,8 +164,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_urlrequest_client_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/urlrequest_cpptoc.cc b/libcef_dll/cpptoc/urlrequest_cpptoc.cc index 0bc3bc586..56b3b41dc 100644 --- a/libcef_dll/cpptoc/urlrequest_cpptoc.cc +++ b/libcef_dll/cpptoc/urlrequest_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9bdfd72adaed935c73827e45dfd62af8457fe73f$ +// $hash=c7f3a2c087ca0cceed41ae5d8cce7c9908d99cf6$ // #include "libcef_dll/cpptoc/urlrequest_cpptoc.h" @@ -162,9 +162,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/v8accessor_cpptoc.cc b/libcef_dll/cpptoc/v8accessor_cpptoc.cc index f201195a8..6ba2c4574 100644 --- a/libcef_dll/cpptoc/v8accessor_cpptoc.cc +++ b/libcef_dll/cpptoc/v8accessor_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a2504c28284997e735a95538b98931c6bece1e38$ +// $hash=82c92e62eb4c2ae2f1a6d17f11f1202ec9435c18$ // #include "libcef_dll/cpptoc/v8accessor_cpptoc.h" @@ -131,9 +131,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/v8context_cpptoc.cc b/libcef_dll/cpptoc/v8context_cpptoc.cc index 2c7eb1be2..04140b150 100644 --- a/libcef_dll/cpptoc/v8context_cpptoc.cc +++ b/libcef_dll/cpptoc/v8context_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=cc6dd68800da221cf4bbed462aaec34d6f20c8f5$ +// $hash=e0711ce07d71ee999712d7aac4d0b98e1c3e4e35$ // #include "libcef_dll/cpptoc/v8context_cpptoc.h" @@ -269,9 +269,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/v8exception_cpptoc.cc b/libcef_dll/cpptoc/v8exception_cpptoc.cc index 24952854a..276862983 100644 --- a/libcef_dll/cpptoc/v8exception_cpptoc.cc +++ b/libcef_dll/cpptoc/v8exception_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b7e861d09ab59b636e98e56a191e68a0869b5412$ +// $hash=d9574f2c1903f51f72e942d839cf38b5b544ca5a$ // #include "libcef_dll/cpptoc/v8exception_cpptoc.h" @@ -161,7 +161,8 @@ CefCppToCRefCounted:: template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_v8exception_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/v8handler_cpptoc.cc b/libcef_dll/cpptoc/v8handler_cpptoc.cc index d1cdeda9c..040559978 100644 --- a/libcef_dll/cpptoc/v8handler_cpptoc.cc +++ b/libcef_dll/cpptoc/v8handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a6567a72d78089a0a9784dcc94c6af30af98189b$ +// $hash=5cabdf1101353af805cc5b1ea4e7454e0782ef5b$ // #include "libcef_dll/cpptoc/v8handler_cpptoc.h" @@ -106,9 +106,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/v8interceptor_cpptoc.cc b/libcef_dll/cpptoc/v8interceptor_cpptoc.cc index ccccb8252..995f82500 100644 --- a/libcef_dll/cpptoc/v8interceptor_cpptoc.cc +++ b/libcef_dll/cpptoc/v8interceptor_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b77922c7e347a9371ebdba47213b23fcd62d98a8$ +// $hash=273f3770a20a3176b1c90853827cc92006f68af8$ // #include "libcef_dll/cpptoc/v8interceptor_cpptoc.h" @@ -230,7 +230,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_v8interceptor_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/v8stack_frame_cpptoc.cc b/libcef_dll/cpptoc/v8stack_frame_cpptoc.cc index 648a3e45e..66c27d390 100644 --- a/libcef_dll/cpptoc/v8stack_frame_cpptoc.cc +++ b/libcef_dll/cpptoc/v8stack_frame_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=86438f3cde8e41dc13fc150496886715b8896c22$ +// $hash=77baf7cd69e6d7747d9b089b79612f5aeb90c11a$ // #include "libcef_dll/cpptoc/v8stack_frame_cpptoc.h" @@ -166,7 +166,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_v8stack_frame_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/v8stack_trace_cpptoc.cc b/libcef_dll/cpptoc/v8stack_trace_cpptoc.cc index fb5fa0fd6..777a6baf9 100644 --- a/libcef_dll/cpptoc/v8stack_trace_cpptoc.cc +++ b/libcef_dll/cpptoc/v8stack_trace_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=349630df161107399c7de224db24d618df00e49d$ +// $hash=bd5e0a21a483546f203af9b6526ce175eab8b669$ // #include "libcef_dll/cpptoc/v8stack_trace_cpptoc.h" @@ -100,7 +100,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_v8stack_trace_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/v8value_cpptoc.cc b/libcef_dll/cpptoc/v8value_cpptoc.cc index d9b014e5a..0267b3267 100644 --- a/libcef_dll/cpptoc/v8value_cpptoc.cc +++ b/libcef_dll/cpptoc/v8value_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2677f4fd7af9a5ab8ed8cb675a7cce84c7c18414$ +// $hash=ebe89d21fa4e2640e94ec370773720738a52b58a$ // #include "libcef_dll/cpptoc/v8value_cpptoc.h" @@ -977,9 +977,9 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/value_cpptoc.cc b/libcef_dll/cpptoc/value_cpptoc.cc index 9073f4ff3..8c2686f6b 100644 --- a/libcef_dll/cpptoc/value_cpptoc.cc +++ b/libcef_dll/cpptoc/value_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=06fc95c6ffcd865041be1579f7392bc4b36a65eb$ +// $hash=e2476d89fbe9e3ae0bbadc07f415cc542db7834d$ // #include "libcef_dll/cpptoc/value_cpptoc.h" @@ -418,7 +418,8 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/box_layout_cpptoc.cc b/libcef_dll/cpptoc/views/box_layout_cpptoc.cc index c5679e1fa..ce6e5bcb8 100644 --- a/libcef_dll/cpptoc/views/box_layout_cpptoc.cc +++ b/libcef_dll/cpptoc/views/box_layout_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7af9db791a4b3c2a6f93326731c9959e891148ed$ +// $hash=11b73e56d3e0fe295ea358ce4baa397912540166$ // #include "libcef_dll/cpptoc/views/box_layout_cpptoc.h" @@ -126,9 +126,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/browser_view_cpptoc.cc b/libcef_dll/cpptoc/views/browser_view_cpptoc.cc index 3ce13fc5d..3469d3f35 100644 --- a/libcef_dll/cpptoc/views/browser_view_cpptoc.cc +++ b/libcef_dll/cpptoc/views/browser_view_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8d879b5ba21a991aa60cdde72667473158676056$ +// $hash=afb958f5d591f20d0dd935465734b74673e975c6$ // #include "libcef_dll/cpptoc/views/browser_view_cpptoc.h" @@ -1037,7 +1037,8 @@ CefCppToCRefCounted:: template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_browser_view_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.cc b/libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.cc index fbaede064..f53601b88 100644 --- a/libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.cc +++ b/libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9a19ca77c7dad9e0c8ddd5a1f3f2c1a2073fdd84$ +// $hash=02a5e27f4359f971859d711c0943d87e1bf0e883$ // #include "libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.h" @@ -358,10 +358,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefBrowserViewDelegateCppToC, + CefBrowserViewDelegate, + cef_browser_view_delegate_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/button_cpptoc.cc b/libcef_dll/cpptoc/views/button_cpptoc.cc index e8ca19098..f5342e1f9 100644 --- a/libcef_dll/cpptoc/views/button_cpptoc.cc +++ b/libcef_dll/cpptoc/views/button_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6537359783dd7ee8c7dbacaffad85eb5f73c77aa$ +// $hash=f39e71d81c44c75381187cf01e874625ce5fe6b0$ // #include "libcef_dll/cpptoc/views/button_cpptoc.h" @@ -1014,8 +1014,8 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = - 0; + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/button_delegate_cpptoc.cc b/libcef_dll/cpptoc/views/button_delegate_cpptoc.cc index 1cffad820..4d07b96fd 100644 --- a/libcef_dll/cpptoc/views/button_delegate_cpptoc.cc +++ b/libcef_dll/cpptoc/views/button_delegate_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7e07045e8a886e123572c3063aadd61d8a9624e8$ +// $hash=8c488a494d174ce4c24d2cb08160d738942c4873$ // #include "libcef_dll/cpptoc/views/button_delegate_cpptoc.h" @@ -268,7 +268,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_button_delegate_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/display_cpptoc.cc b/libcef_dll/cpptoc/views/display_cpptoc.cc index cbfdeb055..4696e5fef 100644 --- a/libcef_dll/cpptoc/views/display_cpptoc.cc +++ b/libcef_dll/cpptoc/views/display_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=419a1382826b28236d1489946915172ab944e081$ +// $hash=cb484f32ef70644cbc2aad396f5930135742300c$ // #include "libcef_dll/cpptoc/views/display_cpptoc.h" @@ -256,9 +256,9 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/fill_layout_cpptoc.cc b/libcef_dll/cpptoc/views/fill_layout_cpptoc.cc index af5c35470..33222c836 100644 --- a/libcef_dll/cpptoc/views/fill_layout_cpptoc.cc +++ b/libcef_dll/cpptoc/views/fill_layout_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f780dd085b13ba188b549770e8a2d00cbe2d5c91$ +// $hash=7e40e4881856f1e404489219ba96162391a38327$ // #include "libcef_dll/cpptoc/views/fill_layout_cpptoc.h" @@ -89,9 +89,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/label_button_cpptoc.cc b/libcef_dll/cpptoc/views/label_button_cpptoc.cc index 7bad904b3..8c609b38e 100644 --- a/libcef_dll/cpptoc/views/label_button_cpptoc.cc +++ b/libcef_dll/cpptoc/views/label_button_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=855d24c5bb0627952e9a7549e98d023488d5fcd5$ +// $hash=c52ee90d3f03d493ba9a4e9d6da8a7ce69fa32d9$ // #include "libcef_dll/cpptoc/views/label_button_cpptoc.h" @@ -1275,7 +1275,8 @@ CefCppToCRefCounted:: template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_label_button_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/layout_cpptoc.cc b/libcef_dll/cpptoc/views/layout_cpptoc.cc index 771e975b8..6a5190165 100644 --- a/libcef_dll/cpptoc/views/layout_cpptoc.cc +++ b/libcef_dll/cpptoc/views/layout_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b6e3efc1fe708d14feafbc283fc33e6acef2cca9$ +// $hash=2fafaa0a8898b1d44a814cf440b6f4748e503b5e$ // #include "libcef_dll/cpptoc/views/layout_cpptoc.h" @@ -92,8 +92,8 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = - 0; + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/menu_button_cpptoc.cc b/libcef_dll/cpptoc/views/menu_button_cpptoc.cc index 3f67f5438..4e5f27602 100644 --- a/libcef_dll/cpptoc/views/menu_button_cpptoc.cc +++ b/libcef_dll/cpptoc/views/menu_button_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f1689b3276c5e026ab2c6fa9ee5c272fd82ef476$ +// $hash=5848974f9c2404a99464e3ed4b60629005706161$ // #include "libcef_dll/cpptoc/views/menu_button_cpptoc.h" @@ -1320,9 +1320,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.cc b/libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.cc index 16cfcfdba..ce3c3e9b2 100644 --- a/libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.cc +++ b/libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5fb2df4d0f1e5e3eae470c6808edee2a9cf1d52a$ +// $hash=782642e65456b32ab0fab59db2b9442783b7f574$ // #include "libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.h" @@ -302,10 +302,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/panel_cpptoc.cc b/libcef_dll/cpptoc/views/panel_cpptoc.cc index 9d0da79fe..9c391c5ac 100644 --- a/libcef_dll/cpptoc/views/panel_cpptoc.cc +++ b/libcef_dll/cpptoc/views/panel_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2d4b60447f6e9e1ccc04b5e76f1635ffd3484075$ +// $hash=0215c54c07253713b806bfad871514dba966f6e5$ // #include "libcef_dll/cpptoc/views/panel_cpptoc.h" @@ -1128,7 +1128,8 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/panel_delegate_cpptoc.cc b/libcef_dll/cpptoc/views/panel_delegate_cpptoc.cc index e2e7796d1..70b4f5447 100644 --- a/libcef_dll/cpptoc/views/panel_delegate_cpptoc.cc +++ b/libcef_dll/cpptoc/views/panel_delegate_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c918146a8bbbc5f3e93e6471f9dbab9ca74785a9$ +// $hash=15d4c929e3597024c17b90ccfba019413d758b9b$ // #include "libcef_dll/cpptoc/views/panel_delegate_cpptoc.h" @@ -228,7 +228,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_panel_delegate_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/scroll_view_cpptoc.cc b/libcef_dll/cpptoc/views/scroll_view_cpptoc.cc index 418bdd8f2..bf78b0296 100644 --- a/libcef_dll/cpptoc/views/scroll_view_cpptoc.cc +++ b/libcef_dll/cpptoc/views/scroll_view_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2babe5bd3069d25994beb6d122d59b0038c5a2bb$ +// $hash=322a19963f74b2e1d2038ee223085a9a00c14b4f$ // #include "libcef_dll/cpptoc/views/scroll_view_cpptoc.h" @@ -1077,9 +1077,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/textfield_cpptoc.cc b/libcef_dll/cpptoc/views/textfield_cpptoc.cc index 2956dbdc9..e01fa6288 100644 --- a/libcef_dll/cpptoc/views/textfield_cpptoc.cc +++ b/libcef_dll/cpptoc/views/textfield_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6fb57aee9c6bdbdfbbb93fd99d1ffb5c95675cfc$ +// $hash=49c2b2f64b29ed59760d4975d065002e54b0a382$ // #include "libcef_dll/cpptoc/views/textfield_cpptoc.h" @@ -1447,9 +1447,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/textfield_delegate_cpptoc.cc b/libcef_dll/cpptoc/views/textfield_delegate_cpptoc.cc index 8f8513dd0..c6f78005d 100644 --- a/libcef_dll/cpptoc/views/textfield_delegate_cpptoc.cc +++ b/libcef_dll/cpptoc/views/textfield_delegate_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c4a791057449122f888535d07ccd6ac32757de8b$ +// $hash=74da32f189e4458a4f4b264e2010db3d53f43ce9$ // #include "libcef_dll/cpptoc/views/textfield_delegate_cpptoc.h" @@ -280,8 +280,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_textfield_delegate_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/view_cpptoc.cc b/libcef_dll/cpptoc/views/view_cpptoc.cc index 5c54a3be1..bb0696599 100644 --- a/libcef_dll/cpptoc/views/view_cpptoc.cc +++ b/libcef_dll/cpptoc/views/view_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=84ab086050d93dfdca7f82f454f833a7e73ab7e0$ +// $hash=646792a75bf795fbf895c40c255807c103621d35$ // #include "libcef_dll/cpptoc/views/view_cpptoc.h" @@ -878,7 +878,8 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/view_delegate_cpptoc.cc b/libcef_dll/cpptoc/views/view_delegate_cpptoc.cc index 360f62c59..1178a1eaf 100644 --- a/libcef_dll/cpptoc/views/view_delegate_cpptoc.cc +++ b/libcef_dll/cpptoc/views/view_delegate_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e678eaa0ebf2a590701353fd8bc75f55002ca4b2$ +// $hash=bab06218d38588e89c2e80ebb1d4a883ab8bfd1c$ // #include "libcef_dll/cpptoc/views/view_delegate_cpptoc.h" @@ -245,7 +245,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_view_delegate_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/window_cpptoc.cc b/libcef_dll/cpptoc/views/window_cpptoc.cc index 4692760fd..8d89ae478 100644 --- a/libcef_dll/cpptoc/views/window_cpptoc.cc +++ b/libcef_dll/cpptoc/views/window_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1e38a9d2747c2f2d38371e544a3daf8117612480$ +// $hash=3f676b99fa50e3d3c167c9a937765d698811e7ad$ // #include "libcef_dll/cpptoc/views/window_cpptoc.h" @@ -1696,8 +1696,8 @@ CefCppToCRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = - 0; + CefCppToCRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/views/window_delegate_cpptoc.cc b/libcef_dll/cpptoc/views/window_delegate_cpptoc.cc index de4d92761..d62cd64ac 100644 --- a/libcef_dll/cpptoc/views/window_delegate_cpptoc.cc +++ b/libcef_dll/cpptoc/views/window_delegate_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fad9939546ba7289df656386ae77e4d8b60f58de$ +// $hash=9cf5d66da05ef9e423995bc8f527ef1315812134$ // #include "libcef_dll/cpptoc/views/window_delegate_cpptoc.h" @@ -427,7 +427,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_window_delegate_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/waitable_event_cpptoc.cc b/libcef_dll/cpptoc/waitable_event_cpptoc.cc index 6936c1f03..6b44865c8 100644 --- a/libcef_dll/cpptoc/waitable_event_cpptoc.cc +++ b/libcef_dll/cpptoc/waitable_event_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4fd428371bfadec9dd68d9b95f1b0bfe2599b681$ +// $hash=126ac0a271115e7f1cea48b4c73da1c2b0afc02b$ // #include "libcef_dll/cpptoc/waitable_event_cpptoc.h" @@ -122,7 +122,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_waitable_event_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/web_plugin_info_cpptoc.cc b/libcef_dll/cpptoc/web_plugin_info_cpptoc.cc index ad98b3eb8..cb5587ab3 100644 --- a/libcef_dll/cpptoc/web_plugin_info_cpptoc.cc +++ b/libcef_dll/cpptoc/web_plugin_info_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6e7fee65b06841fd683275211fd2091a08e43473$ +// $hash=a31c59b55268b2fcf3c337a521ead51eca6faac6$ // #include "libcef_dll/cpptoc/web_plugin_info_cpptoc.h" @@ -103,7 +103,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_web_plugin_info_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/web_plugin_info_visitor_cpptoc.cc b/libcef_dll/cpptoc/web_plugin_info_visitor_cpptoc.cc index 40f98e9bb..9d7f92f15 100644 --- a/libcef_dll/cpptoc/web_plugin_info_visitor_cpptoc.cc +++ b/libcef_dll/cpptoc/web_plugin_info_visitor_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=816066f7dd4898066b737cc6a990a8b384d3ae9a$ +// $hash=bf190095504ec7f8b414e1f05eb391a6c69419bb$ // #include "libcef_dll/cpptoc/web_plugin_info_visitor_cpptoc.h" @@ -63,10 +63,10 @@ CefRefPtr CefCppToCRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefWebPluginInfoVisitorCppToC, + CefWebPluginInfoVisitor, + cef_web_plugin_info_visitor_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/web_plugin_unstable_callback_cpptoc.cc b/libcef_dll/cpptoc/web_plugin_unstable_callback_cpptoc.cc index 5636d707b..128a33a4d 100644 --- a/libcef_dll/cpptoc/web_plugin_unstable_callback_cpptoc.cc +++ b/libcef_dll/cpptoc/web_plugin_unstable_callback_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=52bc768586692e9e780fefc07e789f3cfdc032fa$ +// $hash=b519fe405b48bf01449b0f8656d3088ebc80951a$ // #include "libcef_dll/cpptoc/web_plugin_unstable_callback_cpptoc.h" @@ -57,10 +57,10 @@ CefCppToCRefCounted -base::AtomicRefCount - CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCppToCRefCounted< + CefWebPluginUnstableCallbackCppToC, + CefWebPluginUnstableCallback, + cef_web_plugin_unstable_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/write_handler_cpptoc.cc b/libcef_dll/cpptoc/write_handler_cpptoc.cc index dc55d01d9..c0100e2d0 100644 --- a/libcef_dll/cpptoc/write_handler_cpptoc.cc +++ b/libcef_dll/cpptoc/write_handler_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0474e29257b82b777a1f7d2ba4a8fcdb5297d9a6$ +// $hash=8e55451fcdabc0cf875fc530982e7abeec82ca17$ // #include "libcef_dll/cpptoc/write_handler_cpptoc.h" @@ -123,7 +123,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_write_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/x509cert_principal_cpptoc.cc b/libcef_dll/cpptoc/x509cert_principal_cpptoc.cc index 36da3f29b..425986b55 100644 --- a/libcef_dll/cpptoc/x509cert_principal_cpptoc.cc +++ b/libcef_dll/cpptoc/x509cert_principal_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8e46f821396e176418b12eea00f98c94a7af9bbb$ +// $hash=814b14d7539f2cf34aed9f31435f039b4e8536a3$ // #include "libcef_dll/cpptoc/x509cert_principal_cpptoc.h" @@ -229,8 +229,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = - 0; + cef_x509cert_principal_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/x509certificate_cpptoc.cc b/libcef_dll/cpptoc/x509certificate_cpptoc.cc index a02978d27..836ffd675 100644 --- a/libcef_dll/cpptoc/x509certificate_cpptoc.cc +++ b/libcef_dll/cpptoc/x509certificate_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ecc954784a8061eb04b71933bb657368ef120dfa$ +// $hash=62d24a0ab7ac9540d00effbb5d3917116d5e3795$ // #include "libcef_dll/cpptoc/x509certificate_cpptoc.h" @@ -251,7 +251,8 @@ CefRefPtr CefCppToCRefCounted< template <> base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; + cef_x509certificate_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/xml_reader_cpptoc.cc b/libcef_dll/cpptoc/xml_reader_cpptoc.cc index ba5e4342f..a77b435fb 100644 --- a/libcef_dll/cpptoc/xml_reader_cpptoc.cc +++ b/libcef_dll/cpptoc/xml_reader_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=55a9aa1a0d6cf32067a80b6885c7c79b9289eea1$ +// $hash=f725b8ec07b64d7374594b5661d9fddb094f0a7c$ // #include "libcef_dll/cpptoc/xml_reader_cpptoc.h" @@ -560,9 +560,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/cpptoc/zip_reader_cpptoc.cc b/libcef_dll/cpptoc/zip_reader_cpptoc.cc index 1af358664..db9b21ed3 100644 --- a/libcef_dll/cpptoc/zip_reader_cpptoc.cc +++ b/libcef_dll/cpptoc/zip_reader_cpptoc.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a5cfbfd7e733f9874caf3bff213719d3267d3287$ +// $hash=8fe41b3e3057f6831716a2046b5601fc9f5e5ded$ // #include "libcef_dll/cpptoc/zip_reader_cpptoc.h" @@ -252,9 +252,9 @@ CefCppToCRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCppToCRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCppToCRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/accessibility_handler_ctocpp.cc b/libcef_dll/ctocpp/accessibility_handler_ctocpp.cc index 4821ccc22..bc26ae5dd 100644 --- a/libcef_dll/ctocpp/accessibility_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/accessibility_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=419693bf94c043b9c88231dbe321dcefab80e83c$ +// $hash=f691c98aa1cd0771028eee7138ed1e4d8b5add83$ // #include "libcef_dll/ctocpp/accessibility_handler_ctocpp.h" @@ -68,10 +68,10 @@ cef_accessibility_handler_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefAccessibilityHandlerCToCpp, + CefAccessibilityHandler, + cef_accessibility_handler_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/app_ctocpp.cc b/libcef_dll/ctocpp/app_ctocpp.cc index 32fd39a91..c17930253 100644 --- a/libcef_dll/ctocpp/app_ctocpp.cc +++ b/libcef_dll/ctocpp/app_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=96b7f6c626b0153930f9687c6cb5845ac4af2443$ +// $hash=3d9e2266ac75c057313efa394287207897101686$ // #include "libcef_dll/ctocpp/app_ctocpp.h" @@ -123,7 +123,8 @@ cef_app_t* CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/auth_callback_ctocpp.cc b/libcef_dll/ctocpp/auth_callback_ctocpp.cc index 1587ca8e4..dfb7134bc 100644 --- a/libcef_dll/ctocpp/auth_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/auth_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4eadd6cf6e4016537a2dbb9a041f6189801d085a$ +// $hash=7ee7e6684f3703ede9b5dcfb40170923a9d5242e$ // #include "libcef_dll/ctocpp/auth_callback_ctocpp.h" @@ -63,7 +63,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_auth_callback_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/base_ref_counted_ctocpp.cc b/libcef_dll/ctocpp/base_ref_counted_ctocpp.cc index 33e2cd844..e9a9d0e40 100644 --- a/libcef_dll/ctocpp/base_ref_counted_ctocpp.cc +++ b/libcef_dll/ctocpp/base_ref_counted_ctocpp.cc @@ -20,8 +20,8 @@ cef_base_ref_counted_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_base_ref_counted_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/base_scoped_ctocpp.cc b/libcef_dll/ctocpp/base_scoped_ctocpp.cc index cb1d100ff..3b5ec16c1 100644 --- a/libcef_dll/ctocpp/base_scoped_ctocpp.cc +++ b/libcef_dll/ctocpp/base_scoped_ctocpp.cc @@ -24,9 +24,9 @@ CefCToCppScoped:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppScoped::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppScoped:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/before_download_callback_ctocpp.cc b/libcef_dll/ctocpp/before_download_callback_ctocpp.cc index af29537e5..ff48fab2a 100644 --- a/libcef_dll/ctocpp/before_download_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/before_download_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9f7b5d40247a23361c6b5622dbfba9fc50663a4f$ +// $hash=6620dc6736041e4b366326edda388eac15296724$ // #include "libcef_dll/ctocpp/before_download_callback_ctocpp.h" @@ -47,10 +47,10 @@ cef_before_download_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefBeforeDownloadCallbackCToCpp, + CefBeforeDownloadCallback, + cef_before_download_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/binary_value_ctocpp.cc b/libcef_dll/ctocpp/binary_value_ctocpp.cc index affdb0abf..7d1266e26 100644 --- a/libcef_dll/ctocpp/binary_value_ctocpp.cc +++ b/libcef_dll/ctocpp/binary_value_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=bbf880e622f6de542a35ea2b0dbd0b874ef2c512$ +// $hash=cb0d263d6a1c801f1ca75c743bc8d2e5078c46c9$ // #include "libcef_dll/ctocpp/binary_value_ctocpp.h" @@ -165,7 +165,8 @@ CefCToCppRefCounted:: template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_binary_value_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/browser_ctocpp.cc b/libcef_dll/ctocpp/browser_ctocpp.cc index 3365893de..d2936a9fd 100644 --- a/libcef_dll/ctocpp/browser_ctocpp.cc +++ b/libcef_dll/ctocpp/browser_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9f702354dd9771258d66cec721eba3e2ab0cd046$ +// $hash=00ec9a0ebedc9593aaedfffdfca7272b52d79d1d$ // #include "libcef_dll/ctocpp/browser_ctocpp.h" @@ -363,9 +363,9 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/browser_host_ctocpp.cc b/libcef_dll/ctocpp/browser_host_ctocpp.cc index 674cef1fb..ad6ff49e9 100644 --- a/libcef_dll/ctocpp/browser_host_ctocpp.cc +++ b/libcef_dll/ctocpp/browser_host_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ff50d55a6a41b1cb861df1ff7d48a243dbbd665c$ +// $hash=aff3b781529dd68e4a26208c7ab116e8ecd8cca5$ // #include "libcef_dll/ctocpp/browser_host_ctocpp.h" @@ -836,7 +836,8 @@ CefCToCppRefCounted:: template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_browser_host_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/browser_process_handler_ctocpp.cc b/libcef_dll/ctocpp/browser_process_handler_ctocpp.cc index 3a15de113..2886fffca 100644 --- a/libcef_dll/ctocpp/browser_process_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/browser_process_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4b9ebfdb62673c673fb1628c8f24bb50754cb869$ +// $hash=8ff1b23597bf206aa0d65c02e101728bfaf5b084$ // #include "libcef_dll/ctocpp/browser_process_handler_ctocpp.h" @@ -107,10 +107,10 @@ cef_browser_process_handler_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefBrowserProcessHandlerCToCpp, + CefBrowserProcessHandler, + cef_browser_process_handler_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/callback_ctocpp.cc b/libcef_dll/ctocpp/callback_ctocpp.cc index ef0b99014..88977afa2 100644 --- a/libcef_dll/ctocpp/callback_ctocpp.cc +++ b/libcef_dll/ctocpp/callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7ee795c5a528d9f9d0145b138c8f87e427d9fd48$ +// $hash=097e5a79e3e4988d5498f94ff9ec53586a65bbb1$ // #include "libcef_dll/ctocpp/callback_ctocpp.h" @@ -52,9 +52,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/client_ctocpp.cc b/libcef_dll/ctocpp/client_ctocpp.cc index 4e1d069f1..805f58971 100644 --- a/libcef_dll/ctocpp/client_ctocpp.cc +++ b/libcef_dll/ctocpp/client_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1a5e4dcfa2ffdc3755bd9ea45c928e2bb0e17540$ +// $hash=6a38b0b55e4fa4ec4a38db7d2255064e4325c420$ // #include "libcef_dll/ctocpp/client_ctocpp.h" @@ -274,8 +274,8 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = - 0; + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/command_line_ctocpp.cc b/libcef_dll/ctocpp/command_line_ctocpp.cc index 83f40388b..b210c69b5 100644 --- a/libcef_dll/ctocpp/command_line_ctocpp.cc +++ b/libcef_dll/ctocpp/command_line_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2d277a1a0ba292fb02e44230912d75b438a7fb4f$ +// $hash=ff46b642bd5975aa567300c12ce8bf1e0c469d63$ // #include "libcef_dll/ctocpp/command_line_ctocpp.h" @@ -414,7 +414,8 @@ CefCToCppRefCounted:: template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_command_line_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/completion_callback_ctocpp.cc b/libcef_dll/ctocpp/completion_callback_ctocpp.cc index eabb138f7..a9de5239d 100644 --- a/libcef_dll/ctocpp/completion_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/completion_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=dbe3d9b43be8554f642165c6230ceb267999fb02$ +// $hash=92cbd77b8c60f6c0c779ec5f92a741744e8c00b5$ // #include "libcef_dll/ctocpp/completion_callback_ctocpp.h" @@ -43,10 +43,10 @@ cef_completion_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/context_menu_handler_ctocpp.cc b/libcef_dll/ctocpp/context_menu_handler_ctocpp.cc index 3e5898ad9..7e9dab3ce 100644 --- a/libcef_dll/ctocpp/context_menu_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/context_menu_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=29dcaab3b72b6deeb4e6eb682287e1d25c8b21e1$ +// $hash=37de4497a1b539244785fbc5ab8d90b127a2ab80$ // #include "libcef_dll/ctocpp/context_menu_handler_ctocpp.h" @@ -172,10 +172,10 @@ cef_context_menu_handler_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/context_menu_params_ctocpp.cc b/libcef_dll/ctocpp/context_menu_params_ctocpp.cc index fcaeb7454..2905c27ab 100644 --- a/libcef_dll/ctocpp/context_menu_params_ctocpp.cc +++ b/libcef_dll/ctocpp/context_menu_params_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=393260edeabe88e52ab45caee677d59fbfb3270f$ +// $hash=614ebbb5e56b86e3b8bf43d9d5d711a99a86a2cc$ // #include "libcef_dll/ctocpp/context_menu_params_ctocpp.h" @@ -363,10 +363,10 @@ cef_context_menu_params_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/cookie_manager_ctocpp.cc b/libcef_dll/ctocpp/cookie_manager_ctocpp.cc index 7d307e951..e94415b20 100644 --- a/libcef_dll/ctocpp/cookie_manager_ctocpp.cc +++ b/libcef_dll/ctocpp/cookie_manager_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=029e88d2ce63882c56cf0ac4c22772fe149dcfb4$ +// $hash=1b9460a910eefbb7c238fee39d1a7461c238d5eb$ // #include "libcef_dll/ctocpp/cookie_manager_ctocpp.h" @@ -231,7 +231,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_cookie_manager_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/cookie_visitor_ctocpp.cc b/libcef_dll/ctocpp/cookie_visitor_ctocpp.cc index 94a19eaff..eaedcaaa6 100644 --- a/libcef_dll/ctocpp/cookie_visitor_ctocpp.cc +++ b/libcef_dll/ctocpp/cookie_visitor_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e8834bbf6ab6cb2575f73e3f62e70709f9b36322$ +// $hash=a954d7ff4b0fce54eadccea60baf321a47effd6f$ // #include "libcef_dll/ctocpp/cookie_visitor_ctocpp.h" @@ -58,7 +58,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_cookie_visitor_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/ctocpp_ref_counted.h b/libcef_dll/ctocpp/ctocpp_ref_counted.h index a4f048dec..f35792501 100644 --- a/libcef_dll/ctocpp/ctocpp_ref_counted.h +++ b/libcef_dll/ctocpp/ctocpp_ref_counted.h @@ -6,6 +6,7 @@ #define CEF_LIBCEF_DLL_CTOCPP_CTOCPP_REF_COUNTED_H_ #pragma once +#include "include/base/cef_atomic_ref_count.h" #include "include/base/cef_logging.h" #include "include/base/cef_macros.h" #include "include/capi/cef_base_capi.h" diff --git a/libcef_dll/ctocpp/delete_cookies_callback_ctocpp.cc b/libcef_dll/ctocpp/delete_cookies_callback_ctocpp.cc index b886b7019..46fcb4782 100644 --- a/libcef_dll/ctocpp/delete_cookies_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/delete_cookies_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d6a443ca416468eb7fadc6a4b991c5dc9e742b75$ +// $hash=a32e60e1af46a68d75bec3514a59d81ee67203d0$ // #include "libcef_dll/ctocpp/delete_cookies_callback_ctocpp.h" @@ -43,10 +43,10 @@ cef_delete_cookies_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefDeleteCookiesCallbackCToCpp, + CefDeleteCookiesCallback, + cef_delete_cookies_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/dialog_handler_ctocpp.cc b/libcef_dll/ctocpp/dialog_handler_ctocpp.cc index cb2b0e7af..384f4d60d 100644 --- a/libcef_dll/ctocpp/dialog_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/dialog_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=60cf4242abcc2491bbff94d76da6c1683eae7821$ +// $hash=af23f12434672dcf50df95b4e0ec33b92d86943f$ // #include "libcef_dll/ctocpp/dialog_handler_ctocpp.h" @@ -85,7 +85,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_dialog_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/dictionary_value_ctocpp.cc b/libcef_dll/ctocpp/dictionary_value_ctocpp.cc index 00851c252..4a261845e 100644 --- a/libcef_dll/ctocpp/dictionary_value_ctocpp.cc +++ b/libcef_dll/ctocpp/dictionary_value_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b88a478ed6bd8ba50348a76691f4c36994bca20e$ +// $hash=9da71f972c1979ea23e8122d3fcfffa49791320c$ // #include "libcef_dll/ctocpp/dictionary_value_ctocpp.h" @@ -617,8 +617,8 @@ cef_dictionary_value_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_dictionary_value_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/display_handler_ctocpp.cc b/libcef_dll/ctocpp/display_handler_ctocpp.cc index d4a9ff4b1..7b416596c 100644 --- a/libcef_dll/ctocpp/display_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/display_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6ca2f1e0e45645a486603e812aeaffa2de275268$ +// $hash=3326b8685ef95a87e31c06ed4b2b7c1072e8dda2$ // #include "libcef_dll/ctocpp/display_handler_ctocpp.h" @@ -198,7 +198,8 @@ cef_display_handler_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_display_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/domdocument_ctocpp.cc b/libcef_dll/ctocpp/domdocument_ctocpp.cc index 55c0e806a..aab749ead 100644 --- a/libcef_dll/ctocpp/domdocument_ctocpp.cc +++ b/libcef_dll/ctocpp/domdocument_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8f474a766fbe4a540f7d11ba76775b8de495e774$ +// $hash=5b6bd94aebe436d85e66fbc939e49b2e30c2b43e$ // #include "libcef_dll/ctocpp/domdocument_ctocpp.h" @@ -251,7 +251,8 @@ CefCToCppRefCounted:: template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_domdocument_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/domnode_ctocpp.cc b/libcef_dll/ctocpp/domnode_ctocpp.cc index 8ba5b3718..af22e4daf 100644 --- a/libcef_dll/ctocpp/domnode_ctocpp.cc +++ b/libcef_dll/ctocpp/domnode_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c383834c864fc6235749c096939144303ea23af1$ +// $hash=bf38d3d982e86d37a2201c77c7a40e684e8bbb7d$ // #include "libcef_dll/ctocpp/domnode_ctocpp.h" @@ -454,9 +454,9 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/domvisitor_ctocpp.cc b/libcef_dll/ctocpp/domvisitor_ctocpp.cc index be18c4b8f..9b979345c 100644 --- a/libcef_dll/ctocpp/domvisitor_ctocpp.cc +++ b/libcef_dll/ctocpp/domvisitor_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b3f68b08525a2336833f6449763044ad22788e39$ +// $hash=ed34abf9237f2bcc947c49dc5177f824529888d1$ // #include "libcef_dll/ctocpp/domvisitor_ctocpp.h" @@ -47,9 +47,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/download_handler_ctocpp.cc b/libcef_dll/ctocpp/download_handler_ctocpp.cc index 763c2c958..54d63c325 100644 --- a/libcef_dll/ctocpp/download_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/download_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b2141197beb4b7a706c82c5dffbfe5338667d2a2$ +// $hash=d8c54494b305e8d9084c085fe5f0068acfeb0651$ // #include "libcef_dll/ctocpp/download_handler_ctocpp.h" @@ -102,8 +102,8 @@ cef_download_handler_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_download_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/download_image_callback_ctocpp.cc b/libcef_dll/ctocpp/download_image_callback_ctocpp.cc index dc4afe264..734ae0929 100644 --- a/libcef_dll/ctocpp/download_image_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/download_image_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=65f2da73259d7f1847c8b4cdfbd8c7298469fa5c$ +// $hash=e01bc9ce18da170e968017ba0de8928090283f03$ // #include "libcef_dll/ctocpp/download_image_callback_ctocpp.h" @@ -55,10 +55,10 @@ cef_download_image_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefDownloadImageCallbackCToCpp, + CefDownloadImageCallback, + cef_download_image_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/download_item_callback_ctocpp.cc b/libcef_dll/ctocpp/download_item_callback_ctocpp.cc index 34bdae476..57c8bb033 100644 --- a/libcef_dll/ctocpp/download_item_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/download_item_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d9215ae02910dd9116d40e31163cf7eea491012f$ +// $hash=158b19fa3b7bec818b76834d487844acf7434273$ // #include "libcef_dll/ctocpp/download_item_callback_ctocpp.h" @@ -65,10 +65,10 @@ cef_download_item_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefDownloadItemCallbackCToCpp, + CefDownloadItemCallback, + cef_download_item_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/download_item_ctocpp.cc b/libcef_dll/ctocpp/download_item_ctocpp.cc index ba15a8d17..fb675f0ea 100644 --- a/libcef_dll/ctocpp/download_item_ctocpp.cc +++ b/libcef_dll/ctocpp/download_item_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8d42b80fd9a45dc0d59127e1b72ec9900d5e1679$ +// $hash=2f4ecf2b7fdac27491dc8641d406af12121394ab$ // #include "libcef_dll/ctocpp/download_item_ctocpp.h" @@ -284,7 +284,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_download_item_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/drag_data_ctocpp.cc b/libcef_dll/ctocpp/drag_data_ctocpp.cc index 7fe5a3068..60fd8637b 100644 --- a/libcef_dll/ctocpp/drag_data_ctocpp.cc +++ b/libcef_dll/ctocpp/drag_data_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=543054b6b4e606ea5c571ca48d2108f8ed6674ab$ +// $hash=421034f458510f8528ffd3ef8fb6c87a95896c77$ // #include "libcef_dll/ctocpp/drag_data_ctocpp.h" @@ -420,9 +420,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/drag_handler_ctocpp.cc b/libcef_dll/ctocpp/drag_handler_ctocpp.cc index 2ea1b446b..9f2f38116 100644 --- a/libcef_dll/ctocpp/drag_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/drag_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=229f4f18649cbee1661cf3f9c6b25fc5410c2acc$ +// $hash=1339d4a2c50295d64ccfc40c3f4e3b01126ae333$ // #include "libcef_dll/ctocpp/drag_handler_ctocpp.h" @@ -96,7 +96,8 @@ CefCToCppRefCounted:: template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_drag_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/end_tracing_callback_ctocpp.cc b/libcef_dll/ctocpp/end_tracing_callback_ctocpp.cc index 6a8142174..1eda8fb28 100644 --- a/libcef_dll/ctocpp/end_tracing_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/end_tracing_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a3c3922ab75506acb378690f3275e26cb834efba$ +// $hash=8d8b3b460f28ec8a0b81cbf20f6a1fb9e870a7d6$ // #include "libcef_dll/ctocpp/end_tracing_callback_ctocpp.h" @@ -49,10 +49,10 @@ cef_end_tracing_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/file_dialog_callback_ctocpp.cc b/libcef_dll/ctocpp/file_dialog_callback_ctocpp.cc index cf7f2f10c..a922c0629 100644 --- a/libcef_dll/ctocpp/file_dialog_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/file_dialog_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ce458b428e608a21d3a8ddfb71083edade3cb133$ +// $hash=a00508f71ab303aff4779b1ae48df50b61cd3bed$ // #include "libcef_dll/ctocpp/file_dialog_callback_ctocpp.h" @@ -73,10 +73,10 @@ cef_file_dialog_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/find_handler_ctocpp.cc b/libcef_dll/ctocpp/find_handler_ctocpp.cc index 6ee85f1f4..2847c08b8 100644 --- a/libcef_dll/ctocpp/find_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/find_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d881d2602682ff4510ff88f297aea7b2420f9499$ +// $hash=02e7b6d24615b66d38e7f8102fa1061ad4f4204d$ // #include "libcef_dll/ctocpp/find_handler_ctocpp.h" @@ -56,7 +56,8 @@ CefCToCppRefCounted:: template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_find_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/focus_handler_ctocpp.cc b/libcef_dll/ctocpp/focus_handler_ctocpp.cc index 128e3934b..67bb4889c 100644 --- a/libcef_dll/ctocpp/focus_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/focus_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9622ef1a85aabf6aa381b49f199db5473271b67a$ +// $hash=0529472186fd9e4b1dacc8641b705b7ba1d634ab$ // #include "libcef_dll/ctocpp/focus_handler_ctocpp.h" @@ -89,7 +89,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_focus_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/frame_ctocpp.cc b/libcef_dll/ctocpp/frame_ctocpp.cc index 7d273644e..3c0a9deba 100644 --- a/libcef_dll/ctocpp/frame_ctocpp.cc +++ b/libcef_dll/ctocpp/frame_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=41f0d92241ef955c0eb0a5a2ed0c3aafae0fb38b$ +// $hash=73a2a5ef7d9e086e40fb19488f9906d79918ba66$ // #include "libcef_dll/ctocpp/frame_ctocpp.h" @@ -376,7 +376,8 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/geolocation_callback_ctocpp.cc b/libcef_dll/ctocpp/geolocation_callback_ctocpp.cc index 1653344b2..a9bdfe83a 100644 --- a/libcef_dll/ctocpp/geolocation_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/geolocation_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fad66d22e436870bec7d0d8fd41020aee409199a$ +// $hash=96086b1a55c3539fa5a98c71363b1c9f78570398$ // #include "libcef_dll/ctocpp/geolocation_callback_ctocpp.h" @@ -43,10 +43,10 @@ cef_geolocation_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/geolocation_handler_ctocpp.cc b/libcef_dll/ctocpp/geolocation_handler_ctocpp.cc index 8e7dbfef5..8f40f2602 100644 --- a/libcef_dll/ctocpp/geolocation_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/geolocation_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e6b3335f4fa9f8f04ac24c5b66e49923ab7e6e5c$ +// $hash=ead4da44ae76e5b400395a794132fa3f7c2de1a2$ // #include "libcef_dll/ctocpp/geolocation_handler_ctocpp.h" @@ -86,10 +86,10 @@ cef_geolocation_handler_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/get_geolocation_callback_ctocpp.cc b/libcef_dll/ctocpp/get_geolocation_callback_ctocpp.cc index c485ec04a..1114f6239 100644 --- a/libcef_dll/ctocpp/get_geolocation_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/get_geolocation_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a0931ea5dc8d42995b5e114974a8e389d3e58e96$ +// $hash=244606e20e814745606c05061a14d4e79fc782d1$ // #include "libcef_dll/ctocpp/get_geolocation_callback_ctocpp.h" @@ -45,10 +45,10 @@ cef_get_geolocation_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefGetGeolocationCallbackCToCpp, + CefGetGeolocationCallback, + cef_get_geolocation_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/image_ctocpp.cc b/libcef_dll/ctocpp/image_ctocpp.cc index df5f8935e..e626823e8 100644 --- a/libcef_dll/ctocpp/image_ctocpp.cc +++ b/libcef_dll/ctocpp/image_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5e40116321512494caef88ecd4bf6b6185073382$ +// $hash=36fb36578579c66789bc788c599636a94db5856f$ // #include "libcef_dll/ctocpp/image_ctocpp.h" @@ -280,7 +280,8 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/jsdialog_callback_ctocpp.cc b/libcef_dll/ctocpp/jsdialog_callback_ctocpp.cc index 7f35cee43..f9a8cd5c3 100644 --- a/libcef_dll/ctocpp/jsdialog_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/jsdialog_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ed31bf8c6b15dfbe06bc8cc725d845d6b09bcbcf$ +// $hash=9449b646338bc2bf169dbbe3f08ce5655682c53e$ // #include "libcef_dll/ctocpp/jsdialog_callback_ctocpp.h" @@ -48,8 +48,8 @@ cef_jsdialog_callback_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_jsdialog_callback_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/jsdialog_handler_ctocpp.cc b/libcef_dll/ctocpp/jsdialog_handler_ctocpp.cc index 206a47e2d..2fa52190e 100644 --- a/libcef_dll/ctocpp/jsdialog_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/jsdialog_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b428b0f15ba1b1661a5ce951a659975028f368c8$ +// $hash=404ef52888aed03b8fccb4cfde74e579f8302fa6$ // #include "libcef_dll/ctocpp/jsdialog_handler_ctocpp.h" @@ -139,8 +139,8 @@ cef_jsdialog_handler_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_jsdialog_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/keyboard_handler_ctocpp.cc b/libcef_dll/ctocpp/keyboard_handler_ctocpp.cc index 8f6c6872a..30beb4466 100644 --- a/libcef_dll/ctocpp/keyboard_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/keyboard_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=41649365a1d97eac029e3dbcd8c19da5e03bc341$ +// $hash=0ca1bb95f98dbb06b79c341cd586db56b932a557$ // #include "libcef_dll/ctocpp/keyboard_handler_ctocpp.h" @@ -93,8 +93,8 @@ cef_keyboard_handler_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_keyboard_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/life_span_handler_ctocpp.cc b/libcef_dll/ctocpp/life_span_handler_ctocpp.cc index ea9c8a11a..db561c8d7 100644 --- a/libcef_dll/ctocpp/life_span_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/life_span_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1fc3388d5e22b38460cfbbdbbca15a10f19320c7$ +// $hash=f15fe0b9fa2f4687550cb93a612e01778f07c53e$ // #include "libcef_dll/ctocpp/life_span_handler_ctocpp.h" @@ -152,8 +152,8 @@ cef_life_span_handler_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_life_span_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/list_value_ctocpp.cc b/libcef_dll/ctocpp/list_value_ctocpp.cc index 2cd059df4..4fb2c09d4 100644 --- a/libcef_dll/ctocpp/list_value_ctocpp.cc +++ b/libcef_dll/ctocpp/list_value_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a9ba4a22361c5f7d2de811f12348633bd2515f43$ +// $hash=fa19a227c490dd51d34485e9c27090c3052e2621$ // #include "libcef_dll/ctocpp/list_value_ctocpp.h" @@ -477,9 +477,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/load_handler_ctocpp.cc b/libcef_dll/ctocpp/load_handler_ctocpp.cc index edaf7f9fb..489ba4292 100644 --- a/libcef_dll/ctocpp/load_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/load_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=bbb850a48e96714faf6f4772b517bd748a1d36e2$ +// $hash=3cdb8874a933875c72b33a8237e84223f18c6dbd$ // #include "libcef_dll/ctocpp/load_handler_ctocpp.h" @@ -131,7 +131,8 @@ CefCToCppRefCounted:: template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_load_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/menu_model_ctocpp.cc b/libcef_dll/ctocpp/menu_model_ctocpp.cc index 5da485c33..3aca89c89 100644 --- a/libcef_dll/ctocpp/menu_model_ctocpp.cc +++ b/libcef_dll/ctocpp/menu_model_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=be685c43e83d5b570606ed3708ce83d9e6bad0c8$ +// $hash=5e3c716f25ba54a3d277d13612b8d90f68518638$ // #include "libcef_dll/ctocpp/menu_model_ctocpp.h" @@ -972,9 +972,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/menu_model_delegate_ctocpp.cc b/libcef_dll/ctocpp/menu_model_delegate_ctocpp.cc index 250040523..404ef65f7 100644 --- a/libcef_dll/ctocpp/menu_model_delegate_ctocpp.cc +++ b/libcef_dll/ctocpp/menu_model_delegate_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e789b2428bc059a5ccce8ce1a9cc756986fbcad0$ +// $hash=87b13751ccdaeb19b84ecfb62a6f254881edb782$ // #include "libcef_dll/ctocpp/menu_model_delegate_ctocpp.h" @@ -165,10 +165,10 @@ cef_menu_model_delegate_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/navigation_entry_ctocpp.cc b/libcef_dll/ctocpp/navigation_entry_ctocpp.cc index 71c735d47..e5bc2eb83 100644 --- a/libcef_dll/ctocpp/navigation_entry_ctocpp.cc +++ b/libcef_dll/ctocpp/navigation_entry_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9b93796afe697e0e7e9925b0937fc8ee661f8d92$ +// $hash=c122252f704410c504252f3ec109a7d0cf23ca72$ // #include "libcef_dll/ctocpp/navigation_entry_ctocpp.h" @@ -184,8 +184,8 @@ cef_navigation_entry_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_navigation_entry_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.cc b/libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.cc index aec5fc316..fb1f9c80f 100644 --- a/libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.cc +++ b/libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=18f54750f071fa94a3397dedaf2b90c3d4fe3f4b$ +// $hash=2dced8653b36f1ac5cacc16225b615c9d2146dde$ // #include "libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.h" @@ -57,10 +57,10 @@ cef_navigation_entry_visitor_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefNavigationEntryVisitorCToCpp, + CefNavigationEntryVisitor, + cef_navigation_entry_visitor_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/pdf_print_callback_ctocpp.cc b/libcef_dll/ctocpp/pdf_print_callback_ctocpp.cc index 326e35b63..16e304e01 100644 --- a/libcef_dll/ctocpp/pdf_print_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/pdf_print_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d7aae81d3552e76b0fed3fdbd467fc1a89df7e97$ +// $hash=8ee134711d9d71acd08c0a0146494a4f1b76f58b$ // #include "libcef_dll/ctocpp/pdf_print_callback_ctocpp.h" @@ -51,8 +51,8 @@ cef_pdf_print_callback_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_pdf_print_callback_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/post_data_ctocpp.cc b/libcef_dll/ctocpp/post_data_ctocpp.cc index 295598b4a..cdd6e4bd7 100644 --- a/libcef_dll/ctocpp/post_data_ctocpp.cc +++ b/libcef_dll/ctocpp/post_data_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=62ea8e5f3c69adcb7cce5105e55bbca12373e533$ +// $hash=2ff6317da050b73b4fb6bb3d5303b364ecc496c0$ // #include "libcef_dll/ctocpp/post_data_ctocpp.h" @@ -174,9 +174,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/post_data_element_ctocpp.cc b/libcef_dll/ctocpp/post_data_element_ctocpp.cc index 722f5daeb..3777fd494 100644 --- a/libcef_dll/ctocpp/post_data_element_ctocpp.cc +++ b/libcef_dll/ctocpp/post_data_element_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f66e7704d6938d0a6997fd7e7f575930659af430$ +// $hash=85d400500ae15b1750ac10905cac8c90e3ab1541$ // #include "libcef_dll/ctocpp/post_data_element_ctocpp.h" @@ -166,8 +166,8 @@ cef_post_data_element_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_post_data_element_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/print_dialog_callback_ctocpp.cc b/libcef_dll/ctocpp/print_dialog_callback_ctocpp.cc index aba3104ba..72eb20df1 100644 --- a/libcef_dll/ctocpp/print_dialog_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/print_dialog_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6cb42b7225acbf15f3a90243cb7d0edf55cf4f46$ +// $hash=cdb630c6778da3e9e270cc6885a4e40f9f2e73f9$ // #include "libcef_dll/ctocpp/print_dialog_callback_ctocpp.h" @@ -61,10 +61,10 @@ cef_print_dialog_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefPrintDialogCallbackCToCpp, + CefPrintDialogCallback, + cef_print_dialog_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/print_handler_ctocpp.cc b/libcef_dll/ctocpp/print_handler_ctocpp.cc index faa0381af..7dc0bf640 100644 --- a/libcef_dll/ctocpp/print_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/print_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=81ba68d1a06a25947aa4533d2c50fff945c54fd0$ +// $hash=13007e99601ca2653352388e3be5e17932747418$ // #include "libcef_dll/ctocpp/print_handler_ctocpp.h" @@ -175,7 +175,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_print_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/print_job_callback_ctocpp.cc b/libcef_dll/ctocpp/print_job_callback_ctocpp.cc index 86395e633..a52bd5fa5 100644 --- a/libcef_dll/ctocpp/print_job_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/print_job_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8213d4426eef64d20c16ae466f5c03c1cae911dd$ +// $hash=32dd6c84d31a8affb55a3ceff6d242cca11db831$ // #include "libcef_dll/ctocpp/print_job_callback_ctocpp.h" @@ -45,8 +45,8 @@ cef_print_job_callback_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_print_job_callback_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/print_settings_ctocpp.cc b/libcef_dll/ctocpp/print_settings_ctocpp.cc index d3b3091a8..892d74929 100644 --- a/libcef_dll/ctocpp/print_settings_ctocpp.cc +++ b/libcef_dll/ctocpp/print_settings_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7dea8c243d0082bc8a9cf98e4b8b2e58d7d02602$ +// $hash=908ae6082940c366a645f5727dec20a377dbee21$ // #include "libcef_dll/ctocpp/print_settings_ctocpp.h" @@ -388,7 +388,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_print_settings_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/process_message_ctocpp.cc b/libcef_dll/ctocpp/process_message_ctocpp.cc index b3e05b2c2..6cb939eba 100644 --- a/libcef_dll/ctocpp/process_message_ctocpp.cc +++ b/libcef_dll/ctocpp/process_message_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8d022d9bff90419f3c199e1ee0068945cf6329f1$ +// $hash=0b993dfde493bc6a973bf806392a28c220ec3daa$ // #include "libcef_dll/ctocpp/process_message_ctocpp.h" @@ -124,7 +124,8 @@ cef_process_message_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_process_message_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/read_handler_ctocpp.cc b/libcef_dll/ctocpp/read_handler_ctocpp.cc index 0d879a1af..ee59c4525 100644 --- a/libcef_dll/ctocpp/read_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/read_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e6cce9479e55e626246b278bc40c43bbdebd4746$ +// $hash=47f510069d12fe6f7b6ff01e49b9f559bd96ef3e$ // #include "libcef_dll/ctocpp/read_handler_ctocpp.h" @@ -107,7 +107,8 @@ CefCToCppRefCounted:: template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_read_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/register_cdm_callback_ctocpp.cc b/libcef_dll/ctocpp/register_cdm_callback_ctocpp.cc index ce7c03d28..63da97668 100644 --- a/libcef_dll/ctocpp/register_cdm_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/register_cdm_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3f82b194276294c2480a3e266d0610c09b767f21$ +// $hash=5ce31cf6f77f388bc6ddd272baf01bbc5071082d$ // #include "libcef_dll/ctocpp/register_cdm_callback_ctocpp.h" @@ -48,10 +48,10 @@ cef_register_cdm_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefRegisterCdmCallbackCToCpp, + CefRegisterCdmCallback, + cef_register_cdm_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/render_handler_ctocpp.cc b/libcef_dll/ctocpp/render_handler_ctocpp.cc index 8c5dd1a79..a993f240c 100644 --- a/libcef_dll/ctocpp/render_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/render_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1266c6cf5ac224eb92dc0e999287dece4b2ac0b0$ +// $hash=2abc49d257b8e69a1deb4015762f24be0574fa5b$ // #include "libcef_dll/ctocpp/render_handler_ctocpp.h" @@ -344,7 +344,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_render_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/render_process_handler_ctocpp.cc b/libcef_dll/ctocpp/render_process_handler_ctocpp.cc index be48cb47b..e896e2b3c 100644 --- a/libcef_dll/ctocpp/render_process_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/render_process_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e31c65768a5ec576b9dc22888d39dfbe04ab2dc5$ +// $hash=05e333383b04ef0540d0eb995ac6e4bb084a1689$ // #include "libcef_dll/ctocpp/render_process_handler_ctocpp.h" @@ -301,10 +301,10 @@ cef_render_process_handler_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefRenderProcessHandlerCToCpp, + CefRenderProcessHandler, + cef_render_process_handler_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/request_callback_ctocpp.cc b/libcef_dll/ctocpp/request_callback_ctocpp.cc index 3fbfab1f1..f7cae2b3a 100644 --- a/libcef_dll/ctocpp/request_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/request_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=eb26fb79e218ac49035cc0097fe82f394e880df7$ +// $hash=61da15e97126d0c2142ae7b71c9c1833520d6f7c$ // #include "libcef_dll/ctocpp/request_callback_ctocpp.h" @@ -56,8 +56,8 @@ cef_request_callback_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_request_callback_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/request_context_ctocpp.cc b/libcef_dll/ctocpp/request_context_ctocpp.cc index 4be204e01..397952227 100644 --- a/libcef_dll/ctocpp/request_context_ctocpp.cc +++ b/libcef_dll/ctocpp/request_context_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5e273b65a19f371ad2fa5073c38dd6ad7a2c40d5$ +// $hash=eb7605c00ee71d056306cd6b9d0e7eb55112927a$ // #include "libcef_dll/ctocpp/request_context_ctocpp.h" @@ -428,7 +428,8 @@ cef_request_context_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_request_context_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/request_context_handler_ctocpp.cc b/libcef_dll/ctocpp/request_context_handler_ctocpp.cc index 8b2866049..98aaa8e59 100644 --- a/libcef_dll/ctocpp/request_context_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/request_context_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f756067d7f727278a3e4f887a308ecc72ef8a23e$ +// $hash=06dd198c1341ffa14ae98b3937df025322ed5510$ // #include "libcef_dll/ctocpp/request_context_handler_ctocpp.h" @@ -85,10 +85,10 @@ cef_request_context_handler_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefRequestContextHandlerCToCpp, + CefRequestContextHandler, + cef_request_context_handler_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/request_ctocpp.cc b/libcef_dll/ctocpp/request_ctocpp.cc index c5c825804..55ef163f9 100644 --- a/libcef_dll/ctocpp/request_ctocpp.cc +++ b/libcef_dll/ctocpp/request_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ab6fd3ffc31f09fa60192f56e8b58a8e9de54ef2$ +// $hash=037a8e038484feadd47de59ad73e0ea3a296bbe8$ // #include "libcef_dll/ctocpp/request_ctocpp.h" @@ -379,9 +379,9 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/request_handler_ctocpp.cc b/libcef_dll/ctocpp/request_handler_ctocpp.cc index b5cc68c8d..903acdbc2 100644 --- a/libcef_dll/ctocpp/request_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/request_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=03df0b0112a7f9f6cdce88b34a972ec27042b92f$ +// $hash=5f99fe6be69c570bd183e038f6f39184172ea0a6$ // #include "libcef_dll/ctocpp/request_handler_ctocpp.h" @@ -582,7 +582,8 @@ cef_request_handler_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_request_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/resolve_callback_ctocpp.cc b/libcef_dll/ctocpp/resolve_callback_ctocpp.cc index c3e33378a..8025a1fb0 100644 --- a/libcef_dll/ctocpp/resolve_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/resolve_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0e6164c03fe22c9849bdecb957011e7d6d3c80e6$ +// $hash=3dc96b6e8479a7e5fb45d079bbd34696ee517562$ // #include "libcef_dll/ctocpp/resolve_callback_ctocpp.h" @@ -60,8 +60,8 @@ cef_resolve_callback_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_resolve_callback_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/resource_bundle_ctocpp.cc b/libcef_dll/ctocpp/resource_bundle_ctocpp.cc index 1197d13b8..d1aae2af8 100644 --- a/libcef_dll/ctocpp/resource_bundle_ctocpp.cc +++ b/libcef_dll/ctocpp/resource_bundle_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ce7a9042d0bdebfd5c017e6bda42ee819699b6cc$ +// $hash=e6ed7dea6c86313a621700a6ea5678775926d931$ // #include "libcef_dll/ctocpp/resource_bundle_ctocpp.h" @@ -98,7 +98,8 @@ cef_resource_bundle_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_resource_bundle_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/resource_bundle_handler_ctocpp.cc b/libcef_dll/ctocpp/resource_bundle_handler_ctocpp.cc index a715bf8b2..fa92b063c 100644 --- a/libcef_dll/ctocpp/resource_bundle_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/resource_bundle_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2cc1b07e08cab179b9bd5943df8a523bba9be20b$ +// $hash=5dfa79e202741feb19f732cc5508f3fb67b0cf6e$ // #include "libcef_dll/ctocpp/resource_bundle_handler_ctocpp.h" @@ -84,10 +84,10 @@ cef_resource_bundle_handler_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefResourceBundleHandlerCToCpp, + CefResourceBundleHandler, + cef_resource_bundle_handler_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/resource_handler_ctocpp.cc b/libcef_dll/ctocpp/resource_handler_ctocpp.cc index 37d111e80..9765da83f 100644 --- a/libcef_dll/ctocpp/resource_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/resource_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8745295d751a800ecf0a19fb93839e07c978f3a8$ +// $hash=f27f0068e287436b3e603c41e2541dbd20c9c523$ // #include "libcef_dll/ctocpp/resource_handler_ctocpp.h" @@ -151,8 +151,8 @@ cef_resource_handler_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_resource_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/response_ctocpp.cc b/libcef_dll/ctocpp/response_ctocpp.cc index dc91c4ce2..5aa0afcbb 100644 --- a/libcef_dll/ctocpp/response_ctocpp.cc +++ b/libcef_dll/ctocpp/response_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=874b9373e3311b3f0828c5c47d88500d268d4825$ +// $hash=1ed6d4078f88b50d14a585338c31379116c925a3$ // #include "libcef_dll/ctocpp/response_ctocpp.h" @@ -238,9 +238,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/response_filter_ctocpp.cc b/libcef_dll/ctocpp/response_filter_ctocpp.cc index 550cf3aae..57f18c065 100644 --- a/libcef_dll/ctocpp/response_filter_ctocpp.cc +++ b/libcef_dll/ctocpp/response_filter_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c162c4bbfc565459583569f4bfd0bb7d58da8ce5$ +// $hash=4def9f9d450bed5a516e187715fd697653e0aa29$ // #include "libcef_dll/ctocpp/response_filter_ctocpp.h" @@ -76,7 +76,8 @@ cef_response_filter_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_response_filter_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/run_context_menu_callback_ctocpp.cc b/libcef_dll/ctocpp/run_context_menu_callback_ctocpp.cc index bc5c43b00..30550a0bd 100644 --- a/libcef_dll/ctocpp/run_context_menu_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/run_context_menu_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=52f1e64598056c4e301e20277282e6fcbb67ed68$ +// $hash=44ac8b35878196d838ab645cc4e23591cf4ffcd7$ // #include "libcef_dll/ctocpp/run_context_menu_callback_ctocpp.h" @@ -56,10 +56,10 @@ cef_run_context_menu_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefRunContextMenuCallbackCToCpp, + CefRunContextMenuCallback, + cef_run_context_menu_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.cc b/libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.cc index 8670627dc..d5f2fdfea 100644 --- a/libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c7f630a2e2b926950107a50d8bbe428d5954e1c6$ +// $hash=56450ddf676f4cc0510663bff2fcce387ca152bc$ // #include "libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.h" @@ -64,10 +64,10 @@ cef_run_file_dialog_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefRunFileDialogCallbackCToCpp, + CefRunFileDialogCallback, + cef_run_file_dialog_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/scheme_handler_factory_ctocpp.cc b/libcef_dll/ctocpp/scheme_handler_factory_ctocpp.cc index f335fb3c4..9ff8b7148 100644 --- a/libcef_dll/ctocpp/scheme_handler_factory_ctocpp.cc +++ b/libcef_dll/ctocpp/scheme_handler_factory_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=873b1eff71d696da390c589c35d039616fc4ea47$ +// $hash=4ffd3be212a4832de3ec928a196532cfb2b8f45c$ // #include "libcef_dll/ctocpp/scheme_handler_factory_ctocpp.h" @@ -66,10 +66,10 @@ cef_scheme_handler_factory_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefSchemeHandlerFactoryCToCpp, + CefSchemeHandlerFactory, + cef_scheme_handler_factory_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/scheme_registrar_ctocpp.cc b/libcef_dll/ctocpp/scheme_registrar_ctocpp.cc index 50fbfaf7a..375a7ffad 100644 --- a/libcef_dll/ctocpp/scheme_registrar_ctocpp.cc +++ b/libcef_dll/ctocpp/scheme_registrar_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2b2e211c650612103fc46dc368fe2fa60492e6ea$ +// $hash=3d60233df1edf4d3afba07d63a5e56cddc791430$ // #include "libcef_dll/ctocpp/scheme_registrar_ctocpp.h" @@ -71,7 +71,8 @@ cef_scheme_registrar_t* CefCToCppScoped< template <> base::AtomicRefCount CefCToCppScoped::DebugObjCt = 0; + cef_scheme_registrar_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.cc b/libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.cc index 2777b60c0..82931457c 100644 --- a/libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=843bc95ef88f74f32af2d7bc9a42d6b841b052e7$ +// $hash=8601f86f6803d80f7f657e759bf1663f3ffe2365$ // #include "libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.h" @@ -48,11 +48,10 @@ CefCToCppRefCounted -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = - 0; +base::AtomicRefCount CefCToCppRefCounted< + CefSelectClientCertificateCallbackCToCpp, + CefSelectClientCertificateCallback, + cef_select_client_certificate_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/set_cookie_callback_ctocpp.cc b/libcef_dll/ctocpp/set_cookie_callback_ctocpp.cc index e92d4d6e7..afb390be4 100644 --- a/libcef_dll/ctocpp/set_cookie_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/set_cookie_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=64bb21d6f7eb7214b898501824ecafb9935ba809$ +// $hash=bec107d4a5c62aa821acd77da67e4a15c64d2f14$ // #include "libcef_dll/ctocpp/set_cookie_callback_ctocpp.h" @@ -43,10 +43,10 @@ cef_set_cookie_callback_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/sslinfo_ctocpp.cc b/libcef_dll/ctocpp/sslinfo_ctocpp.cc index 44f6a8f5f..c6814504c 100644 --- a/libcef_dll/ctocpp/sslinfo_ctocpp.cc +++ b/libcef_dll/ctocpp/sslinfo_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=cacdb914520e516cc103d8a3318ae768339df314$ +// $hash=e76a677539f236df515f6fbd09366d7c9bcba686$ // #include "libcef_dll/ctocpp/sslinfo_ctocpp.h" @@ -60,9 +60,9 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/sslstatus_ctocpp.cc b/libcef_dll/ctocpp/sslstatus_ctocpp.cc index 9075bb1b8..340144635 100644 --- a/libcef_dll/ctocpp/sslstatus_ctocpp.cc +++ b/libcef_dll/ctocpp/sslstatus_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7c600e4c245f2a601a4d9664f1661f963b5fe714$ +// $hash=f887df57dfc145b107991b7a93a32ba42dd745f0$ // #include "libcef_dll/ctocpp/sslstatus_ctocpp.h" @@ -101,9 +101,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/stream_reader_ctocpp.cc b/libcef_dll/ctocpp/stream_reader_ctocpp.cc index b35282005..95e26f39c 100644 --- a/libcef_dll/ctocpp/stream_reader_ctocpp.cc +++ b/libcef_dll/ctocpp/stream_reader_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0ec4ed2c33eca8b0f123dc7cec65dbdf389462d2$ +// $hash=f8e375a0bb12a3664942be7069d81472233024d4$ // #include "libcef_dll/ctocpp/stream_reader_ctocpp.h" @@ -162,7 +162,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_stream_reader_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/stream_writer_ctocpp.cc b/libcef_dll/ctocpp/stream_writer_ctocpp.cc index eac465e41..97464693a 100644 --- a/libcef_dll/ctocpp/stream_writer_ctocpp.cc +++ b/libcef_dll/ctocpp/stream_writer_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f0efd8c331d50945f8030c786eb88c99a4ac86ed$ +// $hash=c0719f06102c62f781d05d2e7d20cc36f15234de$ // #include "libcef_dll/ctocpp/stream_writer_ctocpp.h" @@ -146,7 +146,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_stream_writer_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/string_visitor_ctocpp.cc b/libcef_dll/ctocpp/string_visitor_ctocpp.cc index 9376f5bf1..93764cd73 100644 --- a/libcef_dll/ctocpp/string_visitor_ctocpp.cc +++ b/libcef_dll/ctocpp/string_visitor_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1df4d5e3bf537c2a8668df657dc8eabe55bdb5ff$ +// $hash=1620fdbfb6fdf2903474e4b7efef4580b6d49b57$ // #include "libcef_dll/ctocpp/string_visitor_ctocpp.h" @@ -47,7 +47,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_string_visitor_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/task_ctocpp.cc b/libcef_dll/ctocpp/task_ctocpp.cc index 62580b265..f833ed3ac 100644 --- a/libcef_dll/ctocpp/task_ctocpp.cc +++ b/libcef_dll/ctocpp/task_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8693984af64ea36db2fb82d397f7e0b482cccb99$ +// $hash=c5828f5fe3ba3298b642659cb2697745da4ab54e$ // #include "libcef_dll/ctocpp/task_ctocpp.h" @@ -43,7 +43,8 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/task_runner_ctocpp.cc b/libcef_dll/ctocpp/task_runner_ctocpp.cc index ad862dd74..c7a50bbe8 100644 --- a/libcef_dll/ctocpp/task_runner_ctocpp.cc +++ b/libcef_dll/ctocpp/task_runner_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1c3649a0a566198686f496673b77f9bd74865581$ +// $hash=ab43e8f427ff95c95333f71c45637dcaf0591311$ // #include "libcef_dll/ctocpp/task_runner_ctocpp.h" @@ -140,9 +140,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/test/translator_test_ctocpp.cc b/libcef_dll/ctocpp/test/translator_test_ctocpp.cc index ee60d85d1..fcaeb48f6 100644 --- a/libcef_dll/ctocpp/test/translator_test_ctocpp.cc +++ b/libcef_dll/ctocpp/test/translator_test_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=abbba0b09a8c13d342b51a2b8cfbc363fde99ca2$ +// $hash=51a75f1cffe3f368185a7079b460c02d2fed2f52$ // #include "libcef_dll/ctocpp/test/translator_test_ctocpp.h" @@ -1385,7 +1385,8 @@ cef_translator_test_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_translator_test_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.cc b/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.cc index 30da2eea7..1704237fc 100644 --- a/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.cc +++ b/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a8637d9865fe06a6d46a5a8f7c7427e44c52c7a9$ +// $hash=cd34eb9af23144ba50fbe8a0d3f654da79195f78$ // #include "libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.h" @@ -65,7 +65,7 @@ template <> base::AtomicRefCount CefCToCppRefCounted< CefTranslatorTestRefPtrClientChildCToCpp, CefTranslatorTestRefPtrClientChild, - cef_translator_test_ref_ptr_client_child_t>::DebugObjCt = 0; + cef_translator_test_ref_ptr_client_child_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.cc b/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.cc index 147972ad1..6ec0fb99c 100644 --- a/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.cc +++ b/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=07881bece2c4f3ec1becec5d12d51d909a122d13$ +// $hash=d455e706b0cfdf93f087725d90ce6f7c3fa083ff$ // #include "libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.h" @@ -52,10 +52,10 @@ CefCToCppRefCounted -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefTranslatorTestRefPtrClientCToCpp, + CefTranslatorTestRefPtrClient, + cef_translator_test_ref_ptr_client_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.cc b/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.cc index 46d554583..d4acfd715 100644 --- a/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.cc +++ b/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a4407d8be20daf15d0f61b04a65d1f43d3de67a1$ +// $hash=db624056b7feffb9456ad3f7f6c969f55dcfb7fb$ // #include "libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.h" @@ -136,7 +136,8 @@ template <> base::AtomicRefCount CefCToCppRefCounted< CefTranslatorTestRefPtrLibraryChildChildCToCpp, CefTranslatorTestRefPtrLibraryChildChild, - cef_translator_test_ref_ptr_library_child_child_t>::DebugObjCt = 0; + cef_translator_test_ref_ptr_library_child_child_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.cc b/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.cc index 12f542981..0b135cb9d 100644 --- a/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.cc +++ b/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=42b33c187c2a011f627f10b314bf89363101aa4e$ +// $hash=60940f2d83cddb02343a3e84d3f0445ecf70870f$ // #include "libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.h" @@ -108,7 +108,7 @@ template <> base::AtomicRefCount CefCToCppRefCounted< CefTranslatorTestRefPtrLibraryChildCToCpp, CefTranslatorTestRefPtrLibraryChild, - cef_translator_test_ref_ptr_library_child_t>::DebugObjCt = 0; + cef_translator_test_ref_ptr_library_child_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.cc b/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.cc index 7b8c3ef5b..d9e7f26cc 100644 --- a/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.cc +++ b/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8378563b430352b25a0ae9400c3c181798dec565$ +// $hash=adb8d1b6439ca458cb11aef7abda5c962988ca29$ // #include "libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.h" @@ -83,10 +83,10 @@ CefCToCppRefCounted -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefTranslatorTestRefPtrLibraryCToCpp, + CefTranslatorTestRefPtrLibrary, + cef_translator_test_ref_ptr_library_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.cc b/libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.cc index 866206472..554cb024d 100644 --- a/libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.cc +++ b/libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=039072ac0b2371a43277b274d6701b32143cfcf2$ +// $hash=1d1b2c67f7a4704976aaa7d0e18febf88db04987$ // #include "libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.h" @@ -74,10 +74,10 @@ CefCToCppScoped -base::AtomicRefCount - CefCToCppScoped::DebugObjCt = 0; +base::AtomicRefCount CefCToCppScoped< + CefTranslatorTestScopedClientChildCToCpp, + CefTranslatorTestScopedClientChild, + cef_translator_test_scoped_client_child_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.cc b/libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.cc index e9425d2a2..28a085057 100644 --- a/libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.cc +++ b/libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8695b6dab7c2fe666f99f1229549b89f50301301$ +// $hash=7c02314b4a7d96ad94361a957e0ce2f6433a0714$ // #include "libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.h" @@ -73,10 +73,10 @@ CefCToCppScoped -base::AtomicRefCount - CefCToCppScoped::DebugObjCt = 0; +base::AtomicRefCount CefCToCppScoped< + CefTranslatorTestScopedClientCToCpp, + CefTranslatorTestScopedClient, + cef_translator_test_scoped_client_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.cc b/libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.cc index 207d792b1..328f13f3b 100644 --- a/libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.cc +++ b/libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=65f1a184cabfaeb24fe9ef8ae1ca0581eddab410$ +// $hash=5229edfdc71e95f0f9d7a288acbe6dd7d1a2c94d$ // #include "libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.h" @@ -147,7 +147,8 @@ template <> base::AtomicRefCount CefCToCppScoped< CefTranslatorTestScopedLibraryChildChildCToCpp, CefTranslatorTestScopedLibraryChildChild, - cef_translator_test_scoped_library_child_child_t>::DebugObjCt = 0; + cef_translator_test_scoped_library_child_child_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.cc b/libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.cc index 740b0388e..e8c321564 100644 --- a/libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.cc +++ b/libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5af91636e08968269d7630c7af4a4c43510cffac$ +// $hash=5af88a6e6b261ddc2a754bffc8c6b1d9bd13bf73$ // #include "libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.h" @@ -126,10 +126,10 @@ CefCToCppScoped -base::AtomicRefCount - CefCToCppScoped::DebugObjCt = 0; +base::AtomicRefCount CefCToCppScoped< + CefTranslatorTestScopedLibraryChildCToCpp, + CefTranslatorTestScopedLibraryChild, + cef_translator_test_scoped_library_child_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.cc b/libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.cc index 431642a1a..303f52c57 100644 --- a/libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.cc +++ b/libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d4d0574d3ca8e5226b711d9b5e5e3c58b26680e0$ +// $hash=d33da690c8e4f335197e8c1c3ecbc01914766985$ // #include "libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.h" @@ -113,10 +113,10 @@ CefCToCppScoped -base::AtomicRefCount - CefCToCppScoped::DebugObjCt = 0; +base::AtomicRefCount CefCToCppScoped< + CefTranslatorTestScopedLibraryCToCpp, + CefTranslatorTestScopedLibrary, + cef_translator_test_scoped_library_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/thread_ctocpp.cc b/libcef_dll/ctocpp/thread_ctocpp.cc index 55aff59fe..77f4b5776 100644 --- a/libcef_dll/ctocpp/thread_ctocpp.cc +++ b/libcef_dll/ctocpp/thread_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ac4acfafda72e57c9bd261be73e8d47fd30ebc0e$ +// $hash=c82eeaa3703fd56e40a4d4c0afbe1abd71920c46$ // #include "libcef_dll/ctocpp/thread_ctocpp.h" @@ -107,8 +107,8 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = - 0; + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/urlrequest_client_ctocpp.cc b/libcef_dll/ctocpp/urlrequest_client_ctocpp.cc index 7fad71eae..b1d7899fa 100644 --- a/libcef_dll/ctocpp/urlrequest_client_ctocpp.cc +++ b/libcef_dll/ctocpp/urlrequest_client_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9388706ef42ddd5675e32501ee217f31ec8a5917$ +// $hash=6aa0c642e302bdb33a4899da1414fd29cd759586$ // #include "libcef_dll/ctocpp/urlrequest_client_ctocpp.h" @@ -152,8 +152,8 @@ cef_urlrequest_client_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_urlrequest_client_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/urlrequest_ctocpp.cc b/libcef_dll/ctocpp/urlrequest_ctocpp.cc index 963a57592..87ffff1c4 100644 --- a/libcef_dll/ctocpp/urlrequest_ctocpp.cc +++ b/libcef_dll/ctocpp/urlrequest_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5997d1eb9b92020d5261d7110f5c590ee85b1878$ +// $hash=45ae3379337399f920ccc9e443e4bd3b0fad0fdc$ // #include "libcef_dll/ctocpp/urlrequest_ctocpp.h" @@ -143,9 +143,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/v8accessor_ctocpp.cc b/libcef_dll/ctocpp/v8accessor_ctocpp.cc index a210fd61b..f662a3f35 100644 --- a/libcef_dll/ctocpp/v8accessor_ctocpp.cc +++ b/libcef_dll/ctocpp/v8accessor_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8d2618628f2907d261fe020c7e5d60dd5f45f14b$ +// $hash=a76f7e09e5b14db29519d13dda81294ca4e92677$ // #include "libcef_dll/ctocpp/v8accessor_ctocpp.h" @@ -106,9 +106,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/v8context_ctocpp.cc b/libcef_dll/ctocpp/v8context_ctocpp.cc index 1afa620a2..55dfcc392 100644 --- a/libcef_dll/ctocpp/v8context_ctocpp.cc +++ b/libcef_dll/ctocpp/v8context_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d520e6de025a46b26dadb74dbb55aefb956ebbcc$ +// $hash=5ab00c7405600a7fd3dad9c1703b9658d7f9edf6$ // #include "libcef_dll/ctocpp/v8context_ctocpp.h" @@ -237,9 +237,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/v8exception_ctocpp.cc b/libcef_dll/ctocpp/v8exception_ctocpp.cc index 78fe802f8..d8899afde 100644 --- a/libcef_dll/ctocpp/v8exception_ctocpp.cc +++ b/libcef_dll/ctocpp/v8exception_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e9044628b089a7405c28d4c6c91665ca11534519$ +// $hash=9fadbedea9a784ce5d674141fa36b54e87150061$ // #include "libcef_dll/ctocpp/v8exception_ctocpp.h" @@ -150,7 +150,8 @@ CefCToCppRefCounted:: template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_v8exception_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/v8handler_ctocpp.cc b/libcef_dll/ctocpp/v8handler_ctocpp.cc index bc41c6272..fe9deda4b 100644 --- a/libcef_dll/ctocpp/v8handler_ctocpp.cc +++ b/libcef_dll/ctocpp/v8handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=581f5db624374bcc4f0bec130cf3f93b5705590b$ +// $hash=adf64a12c173b3d25672d87a141b6d7d48fc0527$ // #include "libcef_dll/ctocpp/v8handler_ctocpp.h" @@ -90,9 +90,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/v8interceptor_ctocpp.cc b/libcef_dll/ctocpp/v8interceptor_ctocpp.cc index 9e3484e65..9ef28d103 100644 --- a/libcef_dll/ctocpp/v8interceptor_ctocpp.cc +++ b/libcef_dll/ctocpp/v8interceptor_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5296e3d09e1c1773e2fc0234e2cb51e5438c7381$ +// $hash=8fc5f6920b3dbb1fa6aaa0b220041ccfacc9bdfe$ // #include "libcef_dll/ctocpp/v8interceptor_ctocpp.h" @@ -185,7 +185,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_v8interceptor_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/v8stack_frame_ctocpp.cc b/libcef_dll/ctocpp/v8stack_frame_ctocpp.cc index 10cac4b44..51f9ca2c8 100644 --- a/libcef_dll/ctocpp/v8stack_frame_ctocpp.cc +++ b/libcef_dll/ctocpp/v8stack_frame_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=190878db3c35559a52669c437c3e4392fddfd07f$ +// $hash=a97be83f7680a0fd89df2450271bcb8adb2e2e53$ // #include "libcef_dll/ctocpp/v8stack_frame_ctocpp.h" @@ -153,7 +153,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_v8stack_frame_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/v8stack_trace_ctocpp.cc b/libcef_dll/ctocpp/v8stack_trace_ctocpp.cc index 46d119b4d..b6c7b51f9 100644 --- a/libcef_dll/ctocpp/v8stack_trace_ctocpp.cc +++ b/libcef_dll/ctocpp/v8stack_trace_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0d5501d1df13b04f9f52443df3f76a9d3de5b8b8$ +// $hash=9dd667a1b78b7a224927942d2866023d6a369caf$ // #include "libcef_dll/ctocpp/v8stack_trace_ctocpp.h" @@ -89,7 +89,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_v8stack_trace_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/v8value_ctocpp.cc b/libcef_dll/ctocpp/v8value_ctocpp.cc index 4774bd861..877eea840 100644 --- a/libcef_dll/ctocpp/v8value_ctocpp.cc +++ b/libcef_dll/ctocpp/v8value_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=99e81b5d76118790646d2343910363948570fb77$ +// $hash=70daa70b2c5906311192c184febb821be6defe0d$ // #include "libcef_dll/ctocpp/v8value_ctocpp.h" @@ -907,9 +907,9 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/value_ctocpp.cc b/libcef_dll/ctocpp/value_ctocpp.cc index 6b543158f..27abbb8d8 100644 --- a/libcef_dll/ctocpp/value_ctocpp.cc +++ b/libcef_dll/ctocpp/value_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=dce21cc429320a9d24fd80ad2bc1347b03f82808$ +// $hash=dd087257a67ceecf0d50d9c61dbee2571408740e$ // #include "libcef_dll/ctocpp/value_ctocpp.h" @@ -386,7 +386,8 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/box_layout_ctocpp.cc b/libcef_dll/ctocpp/views/box_layout_ctocpp.cc index bd04b9018..e03c025c0 100644 --- a/libcef_dll/ctocpp/views/box_layout_ctocpp.cc +++ b/libcef_dll/ctocpp/views/box_layout_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c244fabd0671d80878beec9fcaa13b0251048f50$ +// $hash=12c969efc3a366f77f484907a7bc856ce0508862$ // #include "libcef_dll/ctocpp/views/box_layout_ctocpp.h" @@ -106,9 +106,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/browser_view_ctocpp.cc b/libcef_dll/ctocpp/views/browser_view_ctocpp.cc index b7781b11a..66dfde282 100644 --- a/libcef_dll/ctocpp/views/browser_view_ctocpp.cc +++ b/libcef_dll/ctocpp/views/browser_view_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=db4176c64eb45165a67d1495aa9222169c6f4c89$ +// $hash=2a05b31a5319076dd78e9cf7769ba33f7cdb808b$ // #include "libcef_dll/ctocpp/views/browser_view_ctocpp.h" @@ -766,7 +766,8 @@ CefCToCppRefCounted:: template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_browser_view_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.cc b/libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.cc index b8adfded9..d663181b7 100644 --- a/libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.cc +++ b/libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0eb6f0608c15cba18640c52aa8a3fd0ed73cce15$ +// $hash=396df0db5788f77df337b9dddd5d2a0f6b163898$ // #include "libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.h" @@ -312,10 +312,10 @@ cef_browser_view_delegate_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefBrowserViewDelegateCToCpp, + CefBrowserViewDelegate, + cef_browser_view_delegate_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/button_ctocpp.cc b/libcef_dll/ctocpp/views/button_ctocpp.cc index 5d763b345..57ff5a1c6 100644 --- a/libcef_dll/ctocpp/views/button_ctocpp.cc +++ b/libcef_dll/ctocpp/views/button_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=95094867efa267a8462c40596e749539670db449$ +// $hash=67c9d74ceedb6a6de6d58a40a287d4b7dcb0dd6b$ // #include "libcef_dll/ctocpp/views/button_ctocpp.h" @@ -790,8 +790,8 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = - 0; + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/button_delegate_ctocpp.cc b/libcef_dll/ctocpp/views/button_delegate_ctocpp.cc index 31332a872..cf6148615 100644 --- a/libcef_dll/ctocpp/views/button_delegate_ctocpp.cc +++ b/libcef_dll/ctocpp/views/button_delegate_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2777421fafeccaca2d573bce9b42f28fa0407fb0$ +// $hash=2d33c3a83fe82728034a86001e935856a079e9ca$ // #include "libcef_dll/ctocpp/views/button_delegate_ctocpp.h" @@ -242,7 +242,8 @@ cef_button_delegate_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_button_delegate_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/display_ctocpp.cc b/libcef_dll/ctocpp/views/display_ctocpp.cc index 2341f81b3..62f956b3d 100644 --- a/libcef_dll/ctocpp/views/display_ctocpp.cc +++ b/libcef_dll/ctocpp/views/display_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2e6bd09f8d9e40e522cc5d1060666ebe8a295bc0$ +// $hash=25e5c79b70c5058a8250d50d458e10884c8dbb50$ // #include "libcef_dll/ctocpp/views/display_ctocpp.h" @@ -205,9 +205,9 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/fill_layout_ctocpp.cc b/libcef_dll/ctocpp/views/fill_layout_ctocpp.cc index 57bf1acce..b5945bd71 100644 --- a/libcef_dll/ctocpp/views/fill_layout_ctocpp.cc +++ b/libcef_dll/ctocpp/views/fill_layout_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=de60346a2373edcaa4087576ef4a33ce919f5b6d$ +// $hash=e08a6a71b5888f580c814b8dc8a5cbd5dcf3cfb3$ // #include "libcef_dll/ctocpp/views/fill_layout_ctocpp.h" @@ -73,9 +73,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/label_button_ctocpp.cc b/libcef_dll/ctocpp/views/label_button_ctocpp.cc index cf8a914a5..9d52d1bc8 100644 --- a/libcef_dll/ctocpp/views/label_button_ctocpp.cc +++ b/libcef_dll/ctocpp/views/label_button_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6ad7bcb4afded09f312d3ec082bb4df35da9beec$ +// $hash=4b577a1917ad36e47f35ddfb682435e414e8da8d$ // #include "libcef_dll/ctocpp/views/label_button_ctocpp.h" @@ -958,7 +958,8 @@ CefCToCppRefCounted:: template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_label_button_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/layout_ctocpp.cc b/libcef_dll/ctocpp/views/layout_ctocpp.cc index 775b8b8b5..7a19713bb 100644 --- a/libcef_dll/ctocpp/views/layout_ctocpp.cc +++ b/libcef_dll/ctocpp/views/layout_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a519fd1a0f098ffbcfc309721e5b388a5e3b81d9$ +// $hash=3d9a6d1eac11b56ccf6282e552f4d668de89e161$ // #include "libcef_dll/ctocpp/views/layout_ctocpp.h" @@ -84,8 +84,8 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = - 0; + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/menu_button_ctocpp.cc b/libcef_dll/ctocpp/views/menu_button_ctocpp.cc index 2062af684..889a6780c 100644 --- a/libcef_dll/ctocpp/views/menu_button_ctocpp.cc +++ b/libcef_dll/ctocpp/views/menu_button_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=bdbe24f084050955892d6d78dcb36c0eccddbe6d$ +// $hash=d5d5c9af8be047bbb6597e5c32a18f5ac7b2d1da$ // #include "libcef_dll/ctocpp/views/menu_button_ctocpp.h" @@ -996,9 +996,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.cc b/libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.cc index 7f3509fc7..be3598ebf 100644 --- a/libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.cc +++ b/libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=149d24f6846b814d8207fc358bd77af7c82b037c$ +// $hash=c1af150d3b847d4fda504d0f9c668d90fa348308$ // #include "libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.h" @@ -257,10 +257,10 @@ cef_menu_button_delegate_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/panel_ctocpp.cc b/libcef_dll/ctocpp/views/panel_ctocpp.cc index c075236ae..33a8c13df 100644 --- a/libcef_dll/ctocpp/views/panel_ctocpp.cc +++ b/libcef_dll/ctocpp/views/panel_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2bb4549039d08672bb565effcda7826a192e266a$ +// $hash=5e8d579843e3962122bd06e0967763ee1f44395e$ // #include "libcef_dll/ctocpp/views/panel_ctocpp.h" @@ -902,7 +902,8 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/panel_delegate_ctocpp.cc b/libcef_dll/ctocpp/views/panel_delegate_ctocpp.cc index b0c54deee..ae4bb2945 100644 --- a/libcef_dll/ctocpp/views/panel_delegate_ctocpp.cc +++ b/libcef_dll/ctocpp/views/panel_delegate_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=85c20ac96c3594ba48eeba93a5be33f53223f2ab$ +// $hash=e00ea853327f721ca9c919a1c95d357047e66edb$ // #include "libcef_dll/ctocpp/views/panel_delegate_ctocpp.h" @@ -208,7 +208,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_panel_delegate_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/scroll_view_ctocpp.cc b/libcef_dll/ctocpp/views/scroll_view_ctocpp.cc index 8135e9551..25ac953b4 100644 --- a/libcef_dll/ctocpp/views/scroll_view_ctocpp.cc +++ b/libcef_dll/ctocpp/views/scroll_view_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1d8214a457c639f3b107c50c1da51c9bb90217db$ +// $hash=caaa818b6a1fbcd357b964f27bdf2250ee3a3954$ // #include "libcef_dll/ctocpp/views/scroll_view_ctocpp.h" @@ -812,9 +812,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/textfield_ctocpp.cc b/libcef_dll/ctocpp/views/textfield_ctocpp.cc index 6de2be9bc..a994a80c7 100644 --- a/libcef_dll/ctocpp/views/textfield_ctocpp.cc +++ b/libcef_dll/ctocpp/views/textfield_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5b2c763a6d31b66c7310b67d5d7424676cd9c85c$ +// $hash=181a9fa9d977205038ab682b3e36e5589059e0ca$ // #include "libcef_dll/ctocpp/views/textfield_ctocpp.h" @@ -1129,9 +1129,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/textfield_delegate_ctocpp.cc b/libcef_dll/ctocpp/views/textfield_delegate_ctocpp.cc index 355497cb9..f2c28d985 100644 --- a/libcef_dll/ctocpp/views/textfield_delegate_ctocpp.cc +++ b/libcef_dll/ctocpp/views/textfield_delegate_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=da5f37cac68a3759f2dc14056f25f33fb2957315$ +// $hash=169c274efa7214d25afa0726af5e403efdcf2478$ // #include "libcef_dll/ctocpp/views/textfield_delegate_ctocpp.h" @@ -242,8 +242,8 @@ cef_textfield_delegate_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_textfield_delegate_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/view_ctocpp.cc b/libcef_dll/ctocpp/views/view_ctocpp.cc index 6c3794bce..f198e0bfe 100644 --- a/libcef_dll/ctocpp/views/view_ctocpp.cc +++ b/libcef_dll/ctocpp/views/view_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7d48e623cbf70be51e4809e2fd1b08341d5dd620$ +// $hash=62b03095ce5c1dd41ffc1ec0d00c650a2fcc6d6f$ // #include "libcef_dll/ctocpp/views/view_ctocpp.h" @@ -732,7 +732,8 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/view_delegate_ctocpp.cc b/libcef_dll/ctocpp/views/view_delegate_ctocpp.cc index be04d9769..f72515855 100644 --- a/libcef_dll/ctocpp/views/view_delegate_ctocpp.cc +++ b/libcef_dll/ctocpp/views/view_delegate_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=89d54d92898217240204511d1f90da18890f04ee$ +// $hash=805387f973b3e0caddd76510d9a09dce17076a73$ // #include "libcef_dll/ctocpp/views/view_delegate_ctocpp.h" @@ -229,7 +229,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_view_delegate_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/window_ctocpp.cc b/libcef_dll/ctocpp/views/window_ctocpp.cc index 6f6808afd..2ae01e5f3 100644 --- a/libcef_dll/ctocpp/views/window_ctocpp.cc +++ b/libcef_dll/ctocpp/views/window_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=89793d32af95e19caecc99078e0465e2b467ee6a$ +// $hash=a402b82c61b070380691f778a66060e2d5c9c17e$ // #include "libcef_dll/ctocpp/views/window_ctocpp.h" @@ -1382,8 +1382,8 @@ CefCToCppRefCounted::UnwrapDerived( #if DCHECK_IS_ON() template <> base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = - 0; + CefCToCppRefCounted::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/views/window_delegate_ctocpp.cc b/libcef_dll/ctocpp/views/window_delegate_ctocpp.cc index d3e8358b0..76cd092bf 100644 --- a/libcef_dll/ctocpp/views/window_delegate_ctocpp.cc +++ b/libcef_dll/ctocpp/views/window_delegate_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6427d6295c6219f21468ed99bf20e4d3eddfe83b$ +// $hash=c2256192e44464a7c89f2e43619a92049d1c080c$ // #include "libcef_dll/ctocpp/views/window_delegate_ctocpp.h" @@ -372,7 +372,8 @@ cef_window_delegate_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_window_delegate_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/waitable_event_ctocpp.cc b/libcef_dll/ctocpp/waitable_event_ctocpp.cc index ec2c0461a..a79e69ef3 100644 --- a/libcef_dll/ctocpp/waitable_event_ctocpp.cc +++ b/libcef_dll/ctocpp/waitable_event_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ac1dfcde986921cadaa0086dc9206913a7ca91f3$ +// $hash=909f533ecdf6af2dca40e96d39c538c47b38f0bf$ // #include "libcef_dll/ctocpp/waitable_event_ctocpp.h" @@ -110,7 +110,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_waitable_event_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/web_plugin_info_ctocpp.cc b/libcef_dll/ctocpp/web_plugin_info_ctocpp.cc index 6c5283518..e0342c902 100644 --- a/libcef_dll/ctocpp/web_plugin_info_ctocpp.cc +++ b/libcef_dll/ctocpp/web_plugin_info_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=56d75b86aa8982feda73441e5453b85ded539f5f$ +// $hash=d79f25c885d7397e93bb73626c50fa387a3cf1c6$ // #include "libcef_dll/ctocpp/web_plugin_info_ctocpp.h" @@ -98,7 +98,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_web_plugin_info_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/web_plugin_info_visitor_ctocpp.cc b/libcef_dll/ctocpp/web_plugin_info_visitor_ctocpp.cc index 271f22f78..5912f2e96 100644 --- a/libcef_dll/ctocpp/web_plugin_info_visitor_ctocpp.cc +++ b/libcef_dll/ctocpp/web_plugin_info_visitor_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=af1af3527892457a1c2f98673d68d1a0e96db53a$ +// $hash=f17960728d19441ce52fd8e551e13fa7085e869e$ // #include "libcef_dll/ctocpp/web_plugin_info_visitor_ctocpp.h" @@ -55,10 +55,10 @@ cef_web_plugin_info_visitor_t* CefCToCppRefCounted< #if DCHECK_IS_ON() template <> -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefWebPluginInfoVisitorCToCpp, + CefWebPluginInfoVisitor, + cef_web_plugin_info_visitor_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/web_plugin_unstable_callback_ctocpp.cc b/libcef_dll/ctocpp/web_plugin_unstable_callback_ctocpp.cc index 37c6c7ef4..e0c86de87 100644 --- a/libcef_dll/ctocpp/web_plugin_unstable_callback_ctocpp.cc +++ b/libcef_dll/ctocpp/web_plugin_unstable_callback_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f44993cacfbd7d02a1eef80d0a0331734d0639f8$ +// $hash=b8df909a774cf1cfd481584bc718b032ef49c389$ // #include "libcef_dll/ctocpp/web_plugin_unstable_callback_ctocpp.h" @@ -49,10 +49,10 @@ CefCToCppRefCounted -base::AtomicRefCount - CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount CefCToCppRefCounted< + CefWebPluginUnstableCallbackCToCpp, + CefWebPluginUnstableCallback, + cef_web_plugin_unstable_callback_t>::DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/write_handler_ctocpp.cc b/libcef_dll/ctocpp/write_handler_ctocpp.cc index 4a6552751..bb6a42070 100644 --- a/libcef_dll/ctocpp/write_handler_ctocpp.cc +++ b/libcef_dll/ctocpp/write_handler_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ceb1d8ea37c7815a778f7f51e68f0160ecd972ee$ +// $hash=119a1b32a2f312cc0c1ac1122e2a13e6fd865aac$ // #include "libcef_dll/ctocpp/write_handler_ctocpp.h" @@ -109,7 +109,8 @@ CefCToCppRefCounted base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_write_handler_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/x509cert_principal_ctocpp.cc b/libcef_dll/ctocpp/x509cert_principal_ctocpp.cc index df57c3680..9e4d3fd3e 100644 --- a/libcef_dll/ctocpp/x509cert_principal_ctocpp.cc +++ b/libcef_dll/ctocpp/x509cert_principal_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6f1cfb4286ceb605bfc6ba718d0ef1b3620bb9de$ +// $hash=894bf599d661a7014fd8106d8cccbaff20b9d7ac$ // #include "libcef_dll/ctocpp/x509cert_principal_ctocpp.h" @@ -215,8 +215,8 @@ cef_x509cert_principal_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = - 0; + cef_x509cert_principal_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/x509certificate_ctocpp.cc b/libcef_dll/ctocpp/x509certificate_ctocpp.cc index 304a74628..36dae8def 100644 --- a/libcef_dll/ctocpp/x509certificate_ctocpp.cc +++ b/libcef_dll/ctocpp/x509certificate_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e6992d1ee8d86f4289cb51e155bce1990879e4db$ +// $hash=2671bd327be9faac30b38b219a2d21ae58554659$ // #include "libcef_dll/ctocpp/x509certificate_ctocpp.h" @@ -225,7 +225,8 @@ cef_x509certificate_t* CefCToCppRefCounted< template <> base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; + cef_x509certificate_t>::DebugObjCt + ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/xml_reader_ctocpp.cc b/libcef_dll/ctocpp/xml_reader_ctocpp.cc index 7243ac95d..fb0e2c0e0 100644 --- a/libcef_dll/ctocpp/xml_reader_ctocpp.cc +++ b/libcef_dll/ctocpp/xml_reader_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ac328bf1a231e47e402b7a154a96171eec5265ec$ +// $hash=543334d1449cecbb90ac9d76ba2af98efc86af88$ // #include "libcef_dll/ctocpp/xml_reader_ctocpp.h" @@ -532,9 +532,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/libcef_dll/ctocpp/zip_reader_ctocpp.cc b/libcef_dll/ctocpp/zip_reader_ctocpp.cc index 717d8af2b..2aa8729e7 100644 --- a/libcef_dll/ctocpp/zip_reader_ctocpp.cc +++ b/libcef_dll/ctocpp/zip_reader_ctocpp.cc @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=11321ae1cfc63ec2688da39afd83b866dfd4a497$ +// $hash=d4f8db738611b945b0519dd94884e3ebeb7bb497$ // #include "libcef_dll/ctocpp/zip_reader_ctocpp.h" @@ -234,9 +234,9 @@ CefCToCppRefCounted:: #if DCHECK_IS_ON() template <> -base::AtomicRefCount CefCToCppRefCounted::DebugObjCt = 0; +base::AtomicRefCount + CefCToCppRefCounted:: + DebugObjCt ATOMIC_DECLARATION; #endif template <> diff --git a/patch/patch.cfg b/patch/patch.cfg index 6aeb6349a..9bb88a735 100644 --- a/patch/patch.cfg +++ b/patch/patch.cfg @@ -306,24 +306,25 @@ patches = [ # https://bitbucket.org/chromiumembedded/cef/issues/2015 'name': 'webkit_plugin_info_2015', }, - { - # Windows: Fix AssertIOAllowed failure in NetworkChangeNotifier. - # https://bugs.chromium.org/p/chromium/issues/detail?id=721461 - 'name': 'network_change_721461', - }, { # Linux: Attach routing IDs to PrintingContext. # https://bitbucket.org/chromiumembedded/cef/issues/2196 'name': 'printing_context_2196', }, { - # Windows/macOS: Fix incorrect clear of buffer during software rendering. - # https://bugs.chromium.org/p/chromium/issues/detail?id=729363 - 'name': 'software_renderer_729363', + # Linux: Fix build errors related to dependency versions. + # https://chromium-review.googlesource.com/c/590271/ + 'name': 'linux_build', }, { - # Windows: Disable allocator for cef_sandbox builds. - # https://bitbucket.org/chromiumembedded/cef/issues/2220 - 'name': 'sandbox_2220', + # Linux: Fix duplicate definition of MurmerHash3 functions. + # https://bugs.chromium.org/p/chromium/issues/detail?id=697758#c24 + 'name': 'angle_697758', + 'path': 'third_party/angle/', + }, + { + # macOS: Add missing availability annotations for 10.12 SDK. + # https://bugs.chromium.org/p/chromium/issues/detail?id=747693 + 'name': 'mac_build_747693', }, ] diff --git a/patch/patches/angle_697758.patch b/patch/patches/angle_697758.patch new file mode 100644 index 000000000..88a80580d --- /dev/null +++ b/patch/patches/angle_697758.patch @@ -0,0 +1,22 @@ +diff --git src/libGLESv2.gypi src/libGLESv2.gypi +index e0167d7..937dda0 100644 +--- src/libGLESv2.gypi ++++ src/libGLESv2.gypi +@@ -36,8 +36,6 @@ + 'common/third_party/base/anglebase/sha1.cc', + 'common/third_party/base/anglebase/sha1.h', + 'common/third_party/base/anglebase/sys_byteorder.h', +- 'common/third_party/murmurhash/MurmurHash3.cpp', +- 'common/third_party/murmurhash/MurmurHash3.h', + 'common/tls.cpp', + 'common/tls.h', + 'common/utilities.cpp', +@@ -123,6 +121,8 @@ + [ + 'common/event_tracer.cpp', + 'common/event_tracer.h', ++ 'common/third_party/murmurhash/MurmurHash3.cpp', ++ 'common/third_party/murmurhash/MurmurHash3.h', + 'libANGLE/AttributeMap.cpp', + 'libANGLE/AttributeMap.h', + 'libANGLE/BinaryStream.h', diff --git a/patch/patches/browser_compositor_mac.patch b/patch/patches/browser_compositor_mac.patch index 9a0f9e7a8..df732c818 100644 --- a/patch/patches/browser_compositor_mac.patch +++ b/patch/patches/browser_compositor_mac.patch @@ -1,8 +1,8 @@ diff --git content/browser/renderer_host/browser_compositor_view_mac.h content/browser/renderer_host/browser_compositor_view_mac.h -index 16599b1..e489af1 100644 +index da3c2c7..93ed93d 100644 --- content/browser/renderer_host/browser_compositor_view_mac.h +++ content/browser/renderer_host/browser_compositor_view_mac.h -@@ -51,9 +51,11 @@ class BrowserCompositorMac : public DelegatedFrameHostClient { +@@ -50,9 +50,11 @@ class BrowserCompositorMac : public DelegatedFrameHostClient { // These will not return nullptr until Destroy is called. DelegatedFrameHost* GetDelegatedFrameHost(); @@ -15,10 +15,10 @@ index 16599b1..e489af1 100644 void DidCreateNewRendererCompositorFrameSink( diff --git content/browser/renderer_host/browser_compositor_view_mac.mm content/browser/renderer_host/browser_compositor_view_mac.mm -index 4121584..c821275 100644 +index 278c702..686bfb5 100644 --- content/browser/renderer_host/browser_compositor_view_mac.mm +++ content/browser/renderer_host/browser_compositor_view_mac.mm -@@ -202,6 +202,12 @@ BrowserCompositorMac::~BrowserCompositorMac() { +@@ -204,6 +204,12 @@ BrowserCompositorMac::~BrowserCompositorMac() { g_spare_recyclable_compositors.Get().clear(); } @@ -31,7 +31,7 @@ index 4121584..c821275 100644 ui::AcceleratedWidgetMac* BrowserCompositorMac::GetAcceleratedWidgetMac() { if (recyclable_compositor_) return recyclable_compositor_->accelerated_widget_mac(); -@@ -420,8 +426,13 @@ SkColor BrowserCompositorMac::DelegatedFrameHostGetGutterColor( +@@ -425,8 +431,13 @@ SkColor BrowserCompositorMac::DelegatedFrameHostGetGutterColor( } gfx::Size BrowserCompositorMac::DelegatedFrameHostDesiredSizeInDIP() const { diff --git a/patch/patches/browser_frame_host_guest_1687.patch b/patch/patches/browser_frame_host_guest_1687.patch index 814d41a21..da5ed9f6f 100644 --- a/patch/patches/browser_frame_host_guest_1687.patch +++ b/patch/patches/browser_frame_host_guest_1687.patch @@ -1,5 +1,5 @@ diff --git content/browser/frame_host/render_widget_host_view_guest.cc content/browser/frame_host/render_widget_host_view_guest.cc -index b7e4883..2dfd11e 100644 +index d221c6c..f3d5ad4 100644 --- content/browser/frame_host/render_widget_host_view_guest.cc +++ content/browser/frame_host/render_widget_host_view_guest.cc @@ -246,13 +246,14 @@ void RenderWidgetHostViewGuest::Destroy() { diff --git a/patch/patches/browser_plugin_guest_1565.patch b/patch/patches/browser_plugin_guest_1565.patch index 64aee1437..bd3404e69 100644 --- a/patch/patches/browser_plugin_guest_1565.patch +++ b/patch/patches/browser_plugin_guest_1565.patch @@ -1,8 +1,8 @@ diff --git content/browser/browser_plugin/browser_plugin_guest.cc content/browser/browser_plugin/browser_plugin_guest.cc -index 1f985ec..47bf303 100644 +index b4eae88..bfb3887 100644 --- content/browser/browser_plugin/browser_plugin_guest.cc +++ content/browser/browser_plugin/browser_plugin_guest.cc -@@ -322,14 +322,20 @@ void BrowserPluginGuest::InitInternal( +@@ -336,14 +336,20 @@ void BrowserPluginGuest::InitInternal( static_cast(GetWebContents()->GetView()); } @@ -25,7 +25,7 @@ index 1f985ec..47bf303 100644 } RendererPreferences* renderer_prefs = -@@ -805,7 +811,8 @@ void BrowserPluginGuest::OnWillAttachComplete( +@@ -834,7 +840,8 @@ void BrowserPluginGuest::OnWillAttachComplete( static_cast(GetWebContents()->GetView()); if (!web_contents()->GetRenderViewHost()->GetWidget()->GetView()) { web_contents_view->CreateViewForWidget( @@ -36,10 +36,10 @@ index 1f985ec..47bf303 100644 } diff --git content/browser/frame_host/interstitial_page_impl.cc content/browser/frame_host/interstitial_page_impl.cc -index d890e64..1965603 100644 +index de0043f..7699c2f 100644 --- content/browser/frame_host/interstitial_page_impl.cc +++ content/browser/frame_host/interstitial_page_impl.cc -@@ -605,7 +605,7 @@ WebContentsView* InterstitialPageImpl::CreateWebContentsView() { +@@ -609,7 +609,7 @@ WebContentsView* InterstitialPageImpl::CreateWebContentsView() { WebContentsView* wcv = static_cast(web_contents())->GetView(); RenderWidgetHostViewBase* view = @@ -49,9 +49,18 @@ index d890e64..1965603 100644 render_view_host_->GetMainFrame()->AllowBindings( BINDINGS_POLICY_DOM_AUTOMATION); diff --git content/browser/web_contents/web_contents_view.h content/browser/web_contents/web_contents_view.h -index e4401f8..f2fdb9b 100644 +index e4401f8..20b8560 100644 --- content/browser/web_contents/web_contents_view.h +++ content/browser/web_contents/web_contents_view.h +@@ -24,7 +24,7 @@ struct ScreenInfo; + // The WebContentsView is an interface that is implemented by the platform- + // dependent web contents views. The WebContents uses this interface to talk to + // them. +-class WebContentsView { ++class CONTENT_EXPORT WebContentsView { + public: + virtual ~WebContentsView() {} + @@ -86,13 +86,9 @@ class WebContentsView { // Sets up the View that holds the rendered web page, receives messages for // it and contains page plugins. The host view should be sized to the current @@ -69,10 +78,10 @@ index e4401f8..f2fdb9b 100644 // Creates a new View that holds a popup and receives messages for it. virtual RenderWidgetHostViewBase* CreateViewForPopupWidget( diff --git content/browser/web_contents/web_contents_view_aura.cc content/browser/web_contents/web_contents_view_aura.cc -index 84b906e..ec0d014 100644 +index a99e043..f1ef7cb 100644 --- content/browser/web_contents/web_contents_view_aura.cc +++ content/browser/web_contents/web_contents_view_aura.cc -@@ -846,7 +846,8 @@ void WebContentsViewAura::CreateView( +@@ -844,7 +844,8 @@ void WebContentsViewAura::CreateView( } RenderWidgetHostViewBase* WebContentsViewAura::CreateViewForWidget( @@ -82,7 +91,7 @@ index 84b906e..ec0d014 100644 if (render_widget_host->GetView()) { // During testing, the view will already be set up in most cases to the // test view, so we don't want to clobber it with a real one. To verify that -@@ -858,6 +859,7 @@ RenderWidgetHostViewBase* WebContentsViewAura::CreateViewForWidget( +@@ -856,6 +857,7 @@ RenderWidgetHostViewBase* WebContentsViewAura::CreateViewForWidget( render_widget_host->GetView()); } @@ -91,7 +100,7 @@ index 84b906e..ec0d014 100644 g_create_render_widget_host_view ? g_create_render_widget_host_view(render_widget_host, diff --git content/browser/web_contents/web_contents_view_aura.h content/browser/web_contents/web_contents_view_aura.h -index c52692e..63402a6 100644 +index bb49288..603f18a 100644 --- content/browser/web_contents/web_contents_view_aura.h +++ content/browser/web_contents/web_contents_view_aura.h @@ -118,7 +118,7 @@ class CONTENT_EXPORT WebContentsViewAura @@ -104,7 +113,7 @@ index c52692e..63402a6 100644 RenderWidgetHost* render_widget_host) override; void SetPageTitle(const base::string16& title) override; diff --git content/browser/web_contents/web_contents_view_child_frame.cc content/browser/web_contents/web_contents_view_child_frame.cc -index d10fbca..18df45f 100644 +index eb309e7..e69e6df 100644 --- content/browser/web_contents/web_contents_view_child_frame.cc +++ content/browser/web_contents/web_contents_view_child_frame.cc @@ -94,7 +94,7 @@ void WebContentsViewChildFrame::CreateView(const gfx::Size& initial_size, @@ -117,10 +126,10 @@ index d10fbca..18df45f 100644 } diff --git content/browser/web_contents/web_contents_view_child_frame.h content/browser/web_contents/web_contents_view_child_frame.h -index 86ce68b..fd21e5a 100644 +index 18d45ee..6aa738d 100644 --- content/browser/web_contents/web_contents_view_child_frame.h +++ content/browser/web_contents/web_contents_view_child_frame.h -@@ -39,7 +39,7 @@ class WebContentsViewChildFrame : public WebContentsView, +@@ -40,7 +40,7 @@ class WebContentsViewChildFrame : public WebContentsView, gfx::NativeView context) override; RenderWidgetHostViewBase* CreateViewForWidget( RenderWidgetHost* render_widget_host, @@ -130,7 +139,7 @@ index 86ce68b..fd21e5a 100644 RenderWidgetHost* render_widget_host) override; void SetPageTitle(const base::string16& title) override; diff --git content/browser/web_contents/web_contents_view_guest.cc content/browser/web_contents/web_contents_view_guest.cc -index 702a579..2acceda 100644 +index 0256869..da7a9b8 100644 --- content/browser/web_contents/web_contents_view_guest.cc +++ content/browser/web_contents/web_contents_view_guest.cc @@ -72,6 +72,8 @@ void WebContentsViewGuest::GetScreenInfo(ScreenInfo* screen_info) const { @@ -185,7 +194,7 @@ index 702a579..2acceda 100644 RenderWidgetHostViewBase* WebContentsViewGuest::CreateViewForPopupWidget( diff --git content/browser/web_contents/web_contents_view_guest.h content/browser/web_contents/web_contents_view_guest.h -index 0102d7e..b89d66c 100644 +index 464ea8f..0d3118d 100644 --- content/browser/web_contents/web_contents_view_guest.h +++ content/browser/web_contents/web_contents_view_guest.h @@ -58,7 +58,7 @@ class WebContentsViewGuest : public WebContentsView, @@ -198,7 +207,7 @@ index 0102d7e..b89d66c 100644 RenderWidgetHost* render_widget_host) override; void SetPageTitle(const base::string16& title) override; diff --git content/browser/web_contents/web_contents_view_mac.h content/browser/web_contents/web_contents_view_mac.h -index b0a1a1d..12fce1d3 100644 +index 34945ac..542042c 100644 --- content/browser/web_contents/web_contents_view_mac.h +++ content/browser/web_contents/web_contents_view_mac.h @@ -91,7 +91,7 @@ class WebContentsViewMac : public WebContentsView, @@ -211,7 +220,7 @@ index b0a1a1d..12fce1d3 100644 RenderWidgetHost* render_widget_host) override; void SetPageTitle(const base::string16& title) override; diff --git content/browser/web_contents/web_contents_view_mac.mm content/browser/web_contents/web_contents_view_mac.mm -index ebd0ce3..64a9d85 100644 +index f256f69..fbf2726 100644 --- content/browser/web_contents/web_contents_view_mac.mm +++ content/browser/web_contents/web_contents_view_mac.mm @@ -352,7 +352,8 @@ void WebContentsViewMac::CreateView( diff --git a/patch/patches/chrome_profile.patch b/patch/patches/chrome_profile.patch index b2c31c98a..1b08ee054 100644 --- a/patch/patches/chrome_profile.patch +++ b/patch/patches/chrome_profile.patch @@ -62,11 +62,24 @@ index 4b43013..169ca47 100644 // Returns the original browser context even for Incognito contexts. content::BrowserContext* GetBrowserContextRedirectedInIncognito( content::BrowserContext* context); +diff --git chrome/browser/profiles/profile_manager.cc chrome/browser/profiles/profile_manager.cc +index 00635b8..d15278e 100644 +--- chrome/browser/profiles/profile_manager.cc ++++ chrome/browser/profiles/profile_manager.cc +@@ -375,7 +375,7 @@ ProfileManager::ProfileManager(const base::FilePath& user_data_dir) + chrome::NOTIFICATION_BROWSER_CLOSE_CANCELLED, + content::NotificationService::AllSources()); + +- if (ProfileShortcutManager::IsFeatureEnabled() && !user_data_dir_.empty()) ++ if (!user_data_dir_.empty() && ProfileShortcutManager::IsFeatureEnabled()) + profile_shortcut_manager_.reset(ProfileShortcutManager::Create( + this)); + } diff --git chrome/browser/profiles/profile_manager.h chrome/browser/profiles/profile_manager.h -index 385f9c3..3d126bd 100644 +index b3fa180..81adaea 100644 --- chrome/browser/profiles/profile_manager.h +++ chrome/browser/profiles/profile_manager.h -@@ -89,7 +89,7 @@ class ProfileManager : public base::NonThreadSafe, +@@ -94,7 +94,7 @@ class ProfileManager : public content::NotificationObserver, // acceptable. Returns null if creation of the new profile fails. // TODO(bauerb): Migrate calls from other code to GetProfileByPath(), then // make this method private. @@ -75,7 +88,7 @@ index 385f9c3..3d126bd 100644 // Returns total number of profiles available on this machine. size_t GetNumberOfProfiles(); -@@ -117,7 +117,7 @@ class ProfileManager : public base::NonThreadSafe, +@@ -125,7 +125,7 @@ class ProfileManager : public content::NotificationObserver, // Returns true if the profile pointer is known to point to an existing // profile. @@ -84,7 +97,7 @@ index 385f9c3..3d126bd 100644 // Returns the directory where the first created profile is stored, // relative to the user data directory currently in use. -@@ -126,7 +126,7 @@ class ProfileManager : public base::NonThreadSafe, +@@ -134,7 +134,7 @@ class ProfileManager : public content::NotificationObserver, // Get the Profile last used (the Profile to which owns the most recently // focused window) with this Chrome build. If no signed profile has been // stored in Local State, hand back the Default profile. diff --git a/patch/patches/chrome_widevine.patch b/patch/patches/chrome_widevine.patch index 3547eba94..5a2693bcd 100644 --- a/patch/patches/chrome_widevine.patch +++ b/patch/patches/chrome_widevine.patch @@ -1,8 +1,8 @@ diff --git chrome/common/chrome_content_client.cc chrome/common/chrome_content_client.cc -index b7429b1..a65dfbf 100644 +index 05e23a6..051dab3 100644 --- chrome/common/chrome_content_client.cc +++ chrome/common/chrome_content_client.cc -@@ -81,7 +81,7 @@ +@@ -82,7 +82,7 @@ #endif #if defined(WIDEVINE_CDM_AVAILABLE) && BUILDFLAG(ENABLE_PEPPER_CDMS) && \ diff --git a/patch/patches/component_build_1617.patch b/patch/patches/component_build_1617.patch index 1bce31e69..b0ac29d9e 100644 --- a/patch/patches/component_build_1617.patch +++ b/patch/patches/component_build_1617.patch @@ -1,5 +1,5 @@ diff --git content/app/content_service_manager_main_delegate.h content/app/content_service_manager_main_delegate.h -index c0fd31d..9e95dbb 100644 +index 7563ce4..6c59474 100644 --- content/app/content_service_manager_main_delegate.h +++ content/app/content_service_manager_main_delegate.h @@ -16,7 +16,8 @@ namespace content { @@ -12,29 +12,8 @@ index c0fd31d..9e95dbb 100644 public: explicit ContentServiceManagerMainDelegate(const ContentMainParams& params); ~ContentServiceManagerMainDelegate() override; -diff --git content/browser/frame_host/debug_urls.h content/browser/frame_host/debug_urls.h -index 413cd0f..bab8a6d 100644 ---- content/browser/frame_host/debug_urls.h -+++ content/browser/frame_host/debug_urls.h -@@ -5,6 +5,7 @@ - #ifndef CONTENT_BROWSER_FRAME_HOST_DEBUG_URLS_H_ - #define CONTENT_BROWSER_FRAME_HOST_DEBUG_URLS_H_ - -+#include "content/common/content_export.h" - #include "ui/base/page_transition_types.h" - - class GURL; -@@ -19,7 +20,7 @@ bool HandleDebugURL(const GURL& url, ui::PageTransition transition); - // renderer process, such as one that crashes or hangs the renderer, or a - // javascript: URL that operates on the current page in the renderer. Such URLs - // do not represent actual navigations and can be loaded in any SiteInstance. --bool IsRendererDebugURL(const GURL& url); -+CONTENT_EXPORT bool IsRendererDebugURL(const GURL& url); - - } // namespace content - diff --git third_party/WebKit/Source/web/BUILD.gn third_party/WebKit/Source/web/BUILD.gn -index 4424844..f72486f 100644 +index 148b260..b08bb89 100644 --- third_party/WebKit/Source/web/BUILD.gn +++ third_party/WebKit/Source/web/BUILD.gn @@ -15,6 +15,7 @@ component("web") { diff --git a/patch/patches/compositor_1368.patch b/patch/patches/compositor_1368.patch index 24bc277cd..ecf5d7f48 100644 --- a/patch/patches/compositor_1368.patch +++ b/patch/patches/compositor_1368.patch @@ -1,8 +1,8 @@ diff --git content/browser/compositor/gpu_process_transport_factory.cc content/browser/compositor/gpu_process_transport_factory.cc -index 409df10..e1df182 100644 +index 0e405ef..f2ecb56 100644 --- content/browser/compositor/gpu_process_transport_factory.cc +++ content/browser/compositor/gpu_process_transport_factory.cc -@@ -240,6 +240,13 @@ GpuProcessTransportFactory::~GpuProcessTransportFactory() { +@@ -239,6 +239,13 @@ GpuProcessTransportFactory::~GpuProcessTransportFactory() { std::unique_ptr GpuProcessTransportFactory::CreateSoftwareOutputDevice( ui::Compositor* compositor) { @@ -17,7 +17,7 @@ index 409df10..e1df182 100644 if (command_line->HasSwitch(switches::kHeadless)) return base::WrapUnique(new cc::SoftwareOutputDevice); diff --git ui/compositor/compositor.h ui/compositor/compositor.h -index 54a104a..ba76d90 100644 +index 163fbb0..bb8dea8 100644 --- ui/compositor/compositor.h +++ ui/compositor/compositor.h @@ -18,6 +18,7 @@ @@ -25,10 +25,10 @@ index 54a104a..ba76d90 100644 #include "build/build_config.h" #include "cc/output/begin_frame_args.h" +#include "cc/output/software_output_device.h" - #include "cc/surfaces/surface_sequence.h" #include "cc/trees/layer_tree_host_client.h" #include "cc/trees/layer_tree_host_single_thread_client.h" -@@ -166,6 +167,17 @@ class COMPOSITOR_EXPORT ContextFactory { + #include "components/viz/common/surfaces/surface_sequence.h" +@@ -174,6 +175,17 @@ class COMPOSITOR_EXPORT ContextFactory { virtual void RemoveObserver(ContextFactoryObserver* observer) = 0; }; @@ -46,7 +46,7 @@ index 54a104a..ba76d90 100644 // Compositor object to take care of GPU painting. // A Browser compositor object is responsible for generating the final // displayable form of pixels comprising a single widget's contents. It draws an -@@ -198,6 +210,9 @@ class COMPOSITOR_EXPORT Compositor +@@ -207,6 +219,9 @@ class COMPOSITOR_EXPORT Compositor // Schedules a redraw of the layer tree associated with this compositor. void ScheduleDraw(); @@ -56,7 +56,7 @@ index 54a104a..ba76d90 100644 // Sets the root of the layer tree drawn by this Compositor. The root layer // must have no parent. The compositor's root layer is reset if the root layer // is destroyed. NULL can be passed to reset the root layer, in which case the -@@ -381,6 +396,8 @@ class COMPOSITOR_EXPORT Compositor +@@ -389,6 +404,8 @@ class COMPOSITOR_EXPORT Compositor ui::ContextFactory* context_factory_; ui::ContextFactoryPrivate* context_factory_private_; diff --git a/patch/patches/content_1129_2015.patch b/patch/patches/content_1129_2015.patch index 495bd86e5..6cef73790 100644 --- a/patch/patches/content_1129_2015.patch +++ b/patch/patches/content_1129_2015.patch @@ -1,8 +1,8 @@ diff --git chrome/browser/download/download_target_determiner.cc chrome/browser/download/download_target_determiner.cc -index ecc7952..69ef4b4 100644 +index 43bbb3a..7c03fdc 100644 --- chrome/browser/download/download_target_determiner.cc +++ chrome/browser/download/download_target_determiner.cc -@@ -476,8 +476,8 @@ void IsHandledBySafePlugin(content::ResourceContext* resource_context, +@@ -477,8 +477,8 @@ void IsHandledBySafePlugin(content::ResourceContext* resource_context, content::PluginService* plugin_service = content::PluginService::GetInstance(); bool plugin_found = plugin_service->GetPluginInfo( @@ -38,10 +38,10 @@ index f8b651f..ec39f8d 100644 content::WebPluginInfo* plugin) override; diff --git chrome/browser/plugins/plugin_info_message_filter.cc chrome/browser/plugins/plugin_info_message_filter.cc -index 8c31c98..beef4cb 100644 +index 176b1bc..3e91d67 100644 --- chrome/browser/plugins/plugin_info_message_filter.cc +++ chrome/browser/plugins/plugin_info_message_filter.cc -@@ -451,8 +451,8 @@ bool PluginInfoMessageFilter::Context::FindEnabledPlugin( +@@ -452,8 +452,8 @@ bool PluginInfoMessageFilter::Context::FindEnabledPlugin( for (; i < matching_plugins.size(); ++i) { if (!filter || filter->IsPluginAvailable(render_process_id_, render_frame_id, @@ -66,10 +66,10 @@ index fd8c993..7f70c96 100644 } diff --git chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc -index ea5764b..ae06854 100644 +index 5ca4247..fc24263 100644 --- chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc +++ chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc -@@ -585,6 +585,6 @@ void BrowserTabStripController::OnFindURLMimeTypeCompleted( +@@ -575,6 +575,6 @@ void BrowserTabStripController::OnFindURLMimeTypeCompleted( content::PluginService::GetInstance()->GetPluginInfo( -1, // process ID MSG_ROUTING_NONE, // routing ID @@ -78,10 +78,10 @@ index ea5764b..ae06854 100644 mime_type, false, NULL, &plugin, NULL)); } diff --git content/browser/frame_host/navigation_handle_impl.cc content/browser/frame_host/navigation_handle_impl.cc -index 7563fdf..d4e0a38 100644 +index ec9ded6..4a0406a 100644 --- content/browser/frame_host/navigation_handle_impl.cc +++ content/browser/frame_host/navigation_handle_impl.cc -@@ -294,12 +294,6 @@ net::Error NavigationHandleImpl::GetNetErrorCode() { +@@ -300,12 +300,6 @@ net::Error NavigationHandleImpl::GetNetErrorCode() { } RenderFrameHostImpl* NavigationHandleImpl::GetRenderFrameHost() { @@ -95,10 +95,10 @@ index 7563fdf..d4e0a38 100644 } diff --git content/browser/frame_host/render_frame_host_impl.cc content/browser/frame_host/render_frame_host_impl.cc -index 2bdb04d..b28722e 100644 +index b9f925b..eacb4167 100644 --- content/browser/frame_host/render_frame_host_impl.cc +++ content/browser/frame_host/render_frame_host_impl.cc -@@ -865,10 +865,8 @@ bool RenderFrameHostImpl::OnMessageReceived(const IPC::Message &msg) { +@@ -918,10 +918,8 @@ bool RenderFrameHostImpl::OnMessageReceived(const IPC::Message &msg) { IPC_MESSAGE_HANDLER(FrameHostMsg_ShowPopup, OnShowPopup) IPC_MESSAGE_HANDLER(FrameHostMsg_HidePopup, OnHidePopup) #endif @@ -109,7 +109,7 @@ index 2bdb04d..b28722e 100644 IPC_MESSAGE_HANDLER(FrameHostMsg_RequestOverlayRoutingToken, OnRequestOverlayRoutingToken) IPC_MESSAGE_HANDLER(FrameHostMsg_ShowCreatedWindow, OnShowCreatedWindow) -@@ -1323,6 +1321,7 @@ void RenderFrameHostImpl::OnDidFailProvisionalLoadWithError( +@@ -1410,6 +1408,7 @@ void RenderFrameHostImpl::OnDidFailProvisionalLoadWithError( if (navigation_handle_) { navigation_handle_->set_net_error_code( static_cast(params.error_code)); @@ -117,7 +117,7 @@ index 2bdb04d..b28722e 100644 } frame_tree_node_->navigator()->DidFailProvisionalLoadWithError(this, params); -@@ -2573,14 +2572,12 @@ void RenderFrameHostImpl::OnHidePopup() { +@@ -2683,14 +2682,12 @@ void RenderFrameHostImpl::OnHidePopup() { } #endif @@ -133,10 +133,10 @@ index 2bdb04d..b28722e 100644 void RenderFrameHostImpl::OnRequestOverlayRoutingToken() { // Make sure that we have a token. diff --git content/browser/frame_host/render_frame_host_impl.h content/browser/frame_host/render_frame_host_impl.h -index 1d1de6e..bd05959 100644 +index c3a1726..9b3922e 100644 --- content/browser/frame_host/render_frame_host_impl.h +++ content/browser/frame_host/render_frame_host_impl.h -@@ -801,8 +801,8 @@ class CONTENT_EXPORT RenderFrameHostImpl +@@ -815,8 +815,8 @@ class CONTENT_EXPORT RenderFrameHostImpl void OnShowPopup(const FrameHostMsg_ShowPopup_Params& params); void OnHidePopup(); #endif @@ -147,10 +147,10 @@ index 1d1de6e..bd05959 100644 mojo::ScopedMessagePipeHandle pipe); #endif diff --git content/browser/frame_host/render_frame_message_filter.cc content/browser/frame_host/render_frame_message_filter.cc -index bbbb37d..1fa30da 100644 +index 9b9cfbd..ae3a274 100644 --- content/browser/frame_host/render_frame_message_filter.cc +++ content/browser/frame_host/render_frame_message_filter.cc -@@ -449,6 +449,7 @@ void RenderFrameMessageFilter::GetCookies(int render_frame_id, +@@ -475,6 +475,7 @@ void RenderFrameMessageFilter::GetCookies(int render_frame_id, void RenderFrameMessageFilter::OnGetPlugins( bool refresh, @@ -158,7 +158,7 @@ index bbbb37d..1fa30da 100644 const url::Origin& main_frame_origin, IPC::Message* reply_msg) { // Don't refresh if the specified threshold has not been passed. Note that -@@ -470,18 +471,19 @@ void RenderFrameMessageFilter::OnGetPlugins( +@@ -496,18 +497,19 @@ void RenderFrameMessageFilter::OnGetPlugins( PluginServiceImpl::GetInstance()->GetPlugins( base::Bind(&RenderFrameMessageFilter::GetPluginsCallback, this, reply_msg, @@ -180,7 +180,7 @@ index bbbb37d..1fa30da 100644 int routing_id = MSG_ROUTING_NONE; // In this loop, copy the WebPluginInfo (and do not use a reference) because // the filter might mutate it. -@@ -490,7 +492,7 @@ void RenderFrameMessageFilter::GetPluginsCallback( +@@ -516,7 +518,7 @@ void RenderFrameMessageFilter::GetPluginsCallback( if (!filter || filter->IsPluginAvailable(child_process_id, routing_id, resource_context_, main_frame_origin.GetURL(), @@ -189,7 +189,7 @@ index bbbb37d..1fa30da 100644 plugins.push_back(plugin); } } -@@ -502,6 +504,7 @@ void RenderFrameMessageFilter::GetPluginsCallback( +@@ -528,6 +530,7 @@ void RenderFrameMessageFilter::GetPluginsCallback( void RenderFrameMessageFilter::OnGetPluginInfo( int render_frame_id, const GURL& url, @@ -197,7 +197,7 @@ index bbbb37d..1fa30da 100644 const url::Origin& main_frame_origin, const std::string& mime_type, bool* found, -@@ -510,8 +513,8 @@ void RenderFrameMessageFilter::OnGetPluginInfo( +@@ -536,8 +539,8 @@ void RenderFrameMessageFilter::OnGetPluginInfo( bool allow_wildcard = true; *found = plugin_service_->GetPluginInfo( render_process_id_, render_frame_id, resource_context_, url, @@ -230,10 +230,10 @@ index 3f49cc4..c593146 100644 const std::string& mime_type, bool* found, diff --git content/browser/loader/mime_sniffing_resource_handler.cc content/browser/loader/mime_sniffing_resource_handler.cc -index 11adad4..283f116 100644 +index 20d09f5..f36d855 100644 --- content/browser/loader/mime_sniffing_resource_handler.cc +++ content/browser/loader/mime_sniffing_resource_handler.cc -@@ -519,8 +519,8 @@ bool MimeSniffingResourceHandler::CheckForPluginHandler( +@@ -494,8 +494,8 @@ bool MimeSniffingResourceHandler::CheckForPluginHandler( WebPluginInfo plugin; bool has_plugin = plugin_service_->GetPluginInfo( info->GetChildID(), info->GetRenderFrameID(), info->GetContext(), @@ -279,10 +279,10 @@ index 85b64da..e77f1bb 100644 const std::string& mime_type, bool allow_wildcard, diff --git content/common/frame_messages.h content/common/frame_messages.h -index 7077b9a..5fa68b1 100644 +index 168d64f..82e9385 100644 --- content/common/frame_messages.h +++ content/common/frame_messages.h -@@ -1298,8 +1298,9 @@ IPC_MESSAGE_ROUTED1(FrameHostMsg_PepperStopsPlayback, +@@ -1324,8 +1324,9 @@ IPC_MESSAGE_ROUTED1(FrameHostMsg_PepperStopsPlayback, // Used to get the list of plugins. |main_frame_origin| is used to handle // exceptions for plugin content settings. @@ -293,7 +293,7 @@ index 7077b9a..5fa68b1 100644 url::Origin /* main_frame_origin */, std::vector /* plugins */) -@@ -1307,9 +1308,10 @@ IPC_SYNC_MESSAGE_CONTROL2_1(FrameHostMsg_GetPlugins, +@@ -1333,9 +1334,10 @@ IPC_SYNC_MESSAGE_CONTROL2_1(FrameHostMsg_GetPlugins, // type. If there is no matching plugin, |found| is false. // |actual_mime_type| is the actual mime type supported by the // found plugin. @@ -305,7 +305,7 @@ index 7077b9a..5fa68b1 100644 url::Origin /* main_frame_origin */, std::string /* mime_type */, bool /* found */, -@@ -1677,9 +1679,9 @@ IPC_MESSAGE_ROUTED3(FrameHostMsg_FindMatchRects_Reply, +@@ -1716,9 +1718,9 @@ IPC_MESSAGE_ROUTED3(FrameHostMsg_FindMatchRects_Reply, IPC_MESSAGE_ROUTED2(FrameHostMsg_GetNearestFindResult_Reply, int /* nfr_request_id */, float /* distance */) @@ -317,10 +317,10 @@ index 7077b9a..5fa68b1 100644 // Adding a new message? Stick to the sort order above: first platform // independent FrameMsg, then ifdefs for platform specific FrameMsg, then diff --git content/ppapi_plugin/ppapi_blink_platform_impl.cc content/ppapi_plugin/ppapi_blink_platform_impl.cc -index e9b8930..42e3aec 100644 +index 6190e33..fbde1ba 100644 --- content/ppapi_plugin/ppapi_blink_platform_impl.cc +++ content/ppapi_plugin/ppapi_blink_platform_impl.cc -@@ -213,6 +213,7 @@ std::unique_ptr PpapiBlinkPlatformImpl::CreateURLLoader() { +@@ -215,6 +215,7 @@ std::unique_ptr PpapiBlinkPlatformImpl::CreateURLLoader( void PpapiBlinkPlatformImpl::GetPluginList( bool refresh, @@ -329,17 +329,17 @@ index e9b8930..42e3aec 100644 blink::WebPluginListBuilder* builder) { NOTREACHED(); diff --git content/ppapi_plugin/ppapi_blink_platform_impl.h content/ppapi_plugin/ppapi_blink_platform_impl.h -index 84d29a5..3541ff0 100644 +index fc83aea..9c1a4b2 100644 --- content/ppapi_plugin/ppapi_blink_platform_impl.h +++ content/ppapi_plugin/ppapi_blink_platform_impl.h -@@ -45,6 +45,7 @@ class PpapiBlinkPlatformImpl : public BlinkPlatformImpl { - blink::WebThemeEngine* ThemeEngine() override; - std::unique_ptr CreateURLLoader() override; +@@ -47,6 +47,7 @@ class PpapiBlinkPlatformImpl : public BlinkPlatformImpl { + const blink::WebURLRequest& request, + base::SingleThreadTaskRunner* task_runner) override; void GetPluginList(bool refresh, + bool isMainFrame, const blink::WebSecurityOrigin& mainFrameOrigin, blink::WebPluginListBuilder*) override; - blink::WebData LoadResource(const char* name) override; + blink::WebData GetDataResource(const char* name) override; diff --git content/public/browser/plugin_service.h content/public/browser/plugin_service.h index ac05c13..762262b 100644 --- content/public/browser/plugin_service.h @@ -365,10 +365,10 @@ index 3b610b1..7c439e0 100644 WebPluginInfo* plugin) = 0; diff --git content/public/renderer/content_renderer_client.cc content/public/renderer/content_renderer_client.cc -index 02565ee..de8fa6e 100644 +index 62e2a4e..7932e91 100644 --- content/public/renderer/content_renderer_client.cc +++ content/public/renderer/content_renderer_client.cc -@@ -104,7 +104,6 @@ bool ContentRendererClient::AllowPopup() { +@@ -110,7 +110,6 @@ bool ContentRendererClient::AllowPopup() { return false; } @@ -376,7 +376,7 @@ index 02565ee..de8fa6e 100644 bool ContentRendererClient::HandleNavigation( RenderFrame* render_frame, bool is_content_initiated, -@@ -117,6 +116,7 @@ bool ContentRendererClient::HandleNavigation( +@@ -123,6 +122,7 @@ bool ContentRendererClient::HandleNavigation( return false; } @@ -385,10 +385,10 @@ index 02565ee..de8fa6e 100644 return false; } diff --git content/public/renderer/content_renderer_client.h content/public/renderer/content_renderer_client.h -index 0e554ba..8ac5c54 100644 +index 915dc35..a015048 100644 --- content/public/renderer/content_renderer_client.h +++ content/public/renderer/content_renderer_client.h -@@ -75,6 +75,9 @@ class CONTENT_EXPORT ContentRendererClient { +@@ -77,6 +77,9 @@ class CONTENT_EXPORT ContentRendererClient { // Notifies us that the RenderThread has been created. virtual void RenderThreadStarted() {} @@ -398,7 +398,7 @@ index 0e554ba..8ac5c54 100644 // Notifies that a new RenderFrame has been created. virtual void RenderFrameCreated(RenderFrame* render_frame) {} -@@ -190,7 +193,6 @@ class CONTENT_EXPORT ContentRendererClient { +@@ -197,7 +200,6 @@ class CONTENT_EXPORT ContentRendererClient { // Returns true if a popup window should be allowed. virtual bool AllowPopup(); @@ -406,7 +406,7 @@ index 0e554ba..8ac5c54 100644 // TODO(sgurun) This callback is deprecated and will be removed as soon // as android webview completes implementation of a resource throttle based // shouldoverrideurl implementation. See crbug.com/325351 -@@ -206,6 +208,7 @@ class CONTENT_EXPORT ContentRendererClient { +@@ -213,6 +215,7 @@ class CONTENT_EXPORT ContentRendererClient { blink::WebNavigationPolicy default_policy, bool is_redirect); @@ -415,10 +415,10 @@ index 0e554ba..8ac5c54 100644 // built in media player for the given |url|. Defaults to false. virtual bool ShouldUseMediaPlayerForURL(const GURL& url); diff --git content/public/renderer/render_frame_observer.h content/public/renderer/render_frame_observer.h -index ebf4cd4..27a9df4 100644 +index 48b932e..80110f9 100644 --- content/public/renderer/render_frame_observer.h +++ content/public/renderer/render_frame_observer.h -@@ -115,6 +115,9 @@ class CONTENT_EXPORT RenderFrameObserver : public IPC::Listener, +@@ -116,6 +116,9 @@ class CONTENT_EXPORT RenderFrameObserver : public IPC::Listener, virtual void DidObserveLoadingBehavior( blink::WebLoadingBehaviorFlag behavior) {} @@ -429,10 +429,10 @@ index ebf4cd4..27a9df4 100644 virtual void FocusedNodeChanged(const blink::WebNode& node) {} diff --git content/renderer/render_frame_impl.cc content/renderer/render_frame_impl.cc -index d1e9d50..ad7c36d7 100644 +index 69bb3ef..df99298 100644 --- content/renderer/render_frame_impl.cc +++ content/renderer/render_frame_impl.cc -@@ -2902,7 +2902,8 @@ blink::WebPlugin* RenderFrameImpl::CreatePlugin( +@@ -2897,7 +2897,8 @@ blink::WebPlugin* RenderFrameImpl::CreatePlugin( std::string mime_type; bool found = false; Send(new FrameHostMsg_GetPluginInfo( @@ -442,7 +442,7 @@ index d1e9d50..ad7c36d7 100644 params.mime_type.Utf8(), &found, &info, &mime_type)); if (!found) return nullptr; -@@ -3390,6 +3391,8 @@ void RenderFrameImpl::FrameDetached(blink::WebLocalFrame* frame, +@@ -3205,6 +3206,8 @@ void RenderFrameImpl::FrameDetached(blink::WebLocalFrame* frame, void RenderFrameImpl::FrameFocused() { Send(new FrameHostMsg_FrameFocused(routing_id_)); @@ -451,7 +451,7 @@ index d1e9d50..ad7c36d7 100644 } void RenderFrameImpl::WillCommitProvisionalLoad() { -@@ -5495,9 +5498,8 @@ WebNavigationPolicy RenderFrameImpl::DecidePolicyForNavigation( +@@ -5324,9 +5327,8 @@ WebNavigationPolicy RenderFrameImpl::DecidePolicyForNavigation( (!IsBrowserSideNavigationEnabled() || url != pending_navigation_params_->request_params.redirects[0])); @@ -463,7 +463,7 @@ index d1e9d50..ad7c36d7 100644 // The handlenavigation API is deprecated and will be removed once // crbug.com/325351 is resolved. if (GetContentClient()->renderer()->HandleNavigation( -@@ -5510,7 +5512,6 @@ WebNavigationPolicy RenderFrameImpl::DecidePolicyForNavigation( +@@ -5339,7 +5341,6 @@ WebNavigationPolicy RenderFrameImpl::DecidePolicyForNavigation( } return blink::kWebNavigationPolicyIgnore; } @@ -472,23 +472,23 @@ index d1e9d50..ad7c36d7 100644 Referrer referrer( RenderViewImpl::GetReferrerFromRequest(frame_, info.url_request)); diff --git content/renderer/render_thread_impl.cc content/renderer/render_thread_impl.cc -index 116d31a8..ef645bb 100644 +index c26bd13..25e7028 100644 --- content/renderer/render_thread_impl.cc +++ content/renderer/render_thread_impl.cc -@@ -754,6 +754,8 @@ void RenderThreadImpl::Init( +@@ -772,6 +772,8 @@ void RenderThreadImpl::Init( StartServiceManagerConnection(); + GetContentClient()->renderer()->RenderThreadConnected(); + - field_trial_syncer_.InitFieldTrialObserving( - *base::CommandLine::ForCurrentProcess(), switches::kSingleProcess); - + GetAssociatedInterfaceRegistry()->AddInterface( + base::Bind(&RenderThreadImpl::OnRendererInterfaceRequest, + base::Unretained(this))); diff --git content/renderer/renderer_blink_platform_impl.cc content/renderer/renderer_blink_platform_impl.cc -index a540286..41b19d4 100644 +index 45fcfe8..165a5f4 100644 --- content/renderer/renderer_blink_platform_impl.cc +++ content/renderer/renderer_blink_platform_impl.cc -@@ -738,6 +738,7 @@ RendererBlinkPlatformImpl::CreateMIDIAccessor( +@@ -876,6 +876,7 @@ RendererBlinkPlatformImpl::CreateMIDIAccessor( void RendererBlinkPlatformImpl::GetPluginList( bool refresh, @@ -496,7 +496,7 @@ index a540286..41b19d4 100644 const blink::WebSecurityOrigin& mainFrameOrigin, blink::WebPluginListBuilder* builder) { #if BUILDFLAG(ENABLE_PLUGINS) -@@ -745,7 +746,8 @@ void RendererBlinkPlatformImpl::GetPluginList( +@@ -883,7 +884,8 @@ void RendererBlinkPlatformImpl::GetPluginList( if (!plugin_refresh_allowed_) refresh = false; RenderThread::Get()->Send( @@ -507,11 +507,11 @@ index a540286..41b19d4 100644 builder->AddPlugin(WebString::FromUTF16(plugin.name), WebString::FromUTF16(plugin.desc), diff --git content/renderer/renderer_blink_platform_impl.h content/renderer/renderer_blink_platform_impl.h -index b931470..af3719a 100644 +index 0ca8faf..7c81cf9 100644 --- content/renderer/renderer_blink_platform_impl.h +++ content/renderer/renderer_blink_platform_impl.h -@@ -124,6 +124,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl { - cc::FrameSinkId GenerateFrameSinkId() override; +@@ -125,6 +125,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl { + viz::FrameSinkId GenerateFrameSinkId() override; void GetPluginList(bool refresh, + bool isMainFrame, @@ -567,10 +567,10 @@ index db23a83..57a4c536 100644 const std::string& mime_type, bool allow_wildcard, diff --git content/test/test_blink_web_unit_test_support.cc content/test/test_blink_web_unit_test_support.cc -index 7150daf..69fcc9e 100644 +index c19d608..3dce54d 100644 --- content/test/test_blink_web_unit_test_support.cc +++ content/test/test_blink_web_unit_test_support.cc -@@ -289,6 +289,7 @@ blink::WebThread* TestBlinkWebUnitTestSupport::CurrentThread() { +@@ -290,6 +290,7 @@ blink::WebThread* TestBlinkWebUnitTestSupport::CurrentThread() { void TestBlinkWebUnitTestSupport::GetPluginList( bool refresh, @@ -579,10 +579,10 @@ index 7150daf..69fcc9e 100644 blink::WebPluginListBuilder* builder) { builder->AddPlugin("pdf", "pdf", "pdf-files"); diff --git content/test/test_blink_web_unit_test_support.h content/test/test_blink_web_unit_test_support.h -index 78b7d2c..62a52cb 100644 +index 556242d..61853c2 100644 --- content/test/test_blink_web_unit_test_support.h +++ content/test/test_blink_web_unit_test_support.h -@@ -68,6 +68,7 @@ class TestBlinkWebUnitTestSupport : public BlinkPlatformImpl { +@@ -70,6 +70,7 @@ class TestBlinkWebUnitTestSupport : public BlinkPlatformImpl { const blink::WebSize& size) override; void GetPluginList(bool refresh, diff --git a/patch/patches/content_pepper_flash_1586.patch b/patch/patches/content_pepper_flash_1586.patch index ffc727edf..49b5a01ae 100644 --- a/patch/patches/content_pepper_flash_1586.patch +++ b/patch/patches/content_pepper_flash_1586.patch @@ -1,5 +1,5 @@ diff --git content/browser/renderer_host/pepper/pepper_flash_file_message_filter.cc content/browser/renderer_host/pepper/pepper_flash_file_message_filter.cc -index 6f03077..c61fed3 100644 +index 4822d0d..3efc466 100644 --- content/browser/renderer_host/pepper/pepper_flash_file_message_filter.cc +++ content/browser/renderer_host/pepper/pepper_flash_file_message_filter.cc @@ -55,7 +55,7 @@ PepperFlashFileMessageFilter::PepperFlashFileMessageFilter( diff --git a/patch/patches/crashpad_1995.patch b/patch/patches/crashpad_1995.patch index 3e9ba988a..748a13cae 100644 --- a/patch/patches/crashpad_1995.patch +++ b/patch/patches/crashpad_1995.patch @@ -31,7 +31,7 @@ index 4d385dd..1b51f2d 100644 cflags = [ "/wd4201" ] } diff --git chrome/common/crash_keys.cc chrome/common/crash_keys.cc -index e9578be..2561824 100644 +index effec5c..1cd8f58 100644 --- chrome/common/crash_keys.cc +++ chrome/common/crash_keys.cc @@ -4,6 +4,8 @@ @@ -43,16 +43,16 @@ index e9578be..2561824 100644 #include "base/base_switches.h" #include "base/command_line.h" #include "base/format_macros.h" -@@ -86,7 +88,7 @@ const char kViewCount[] = "view-count"; - - const char kZeroEncodeDetails[] = "zero-encode-details"; +@@ -89,7 +91,7 @@ const char kZeroEncodeDetails[] = "zero-encode-details"; + const char kUserCloudPolicyManagerConnectTrace[] = + "user-cloud-policy-manager-connect-trace"; -size_t RegisterChromeCrashKeys() { +void GetChromeCrashKeys(std::vector& keys) { // The following keys may be chunked by the underlying crash logging system, // but ultimately constitute a single key-value pair. // -@@ -226,10 +228,16 @@ size_t RegisterChromeCrashKeys() { +@@ -229,10 +231,16 @@ size_t RegisterChromeCrashKeys() { // This dynamic set of keys is used for sets of key value pairs when gathering // a collection of data, like command line switches or extension IDs. @@ -71,7 +71,7 @@ index e9578be..2561824 100644 // Register the extension IDs. { -@@ -263,7 +271,7 @@ size_t RegisterChromeCrashKeys() { +@@ -266,7 +274,7 @@ size_t RegisterChromeCrashKeys() { return base::debug::InitCrashKeys(&keys.at(0), keys.size(), kChunkMaxLength); } @@ -80,7 +80,7 @@ index e9578be..2561824 100644 static const char* const kIgnoreSwitches[] = { switches::kEnableLogging, switches::kFlagSwitchesBegin, -@@ -319,7 +327,7 @@ static bool IsBoringSwitch(const std::string& flag) { +@@ -322,7 +330,7 @@ static bool IsBoringSwitch(const std::string& flag) { } void SetCrashKeysFromCommandLine(const base::CommandLine& command_line) { @@ -90,7 +90,7 @@ index e9578be..2561824 100644 void SetActiveExtensions(const std::set& extensions) { diff --git chrome/common/crash_keys.h chrome/common/crash_keys.h -index 93fb0b0..3e543d2 100644 +index 687146e..b1b73d6 100644 --- chrome/common/crash_keys.h +++ chrome/common/crash_keys.h @@ -22,10 +22,18 @@ class CommandLine; @@ -113,7 +113,7 @@ index 93fb0b0..3e543d2 100644 // on the given |command_line|. void SetCrashKeysFromCommandLine(const base::CommandLine& command_line); diff --git chrome_elf/BUILD.gn chrome_elf/BUILD.gn -index c8197e9..06adc24 100644 +index 8ae2c85..cea4a3d 100644 --- chrome_elf/BUILD.gn +++ chrome_elf/BUILD.gn @@ -7,6 +7,7 @@ @@ -143,8 +143,8 @@ index c8197e9..06adc24 100644 "//chrome/install_static:install_static_util", "//components/crash/content/app:app", "//components/crash/core/common", # crash_keys -@@ -154,6 +154,17 @@ static_library("crash") { - "//content/public/common:result_codes", +@@ -155,6 +155,17 @@ static_library("crash") { + "//gpu/config:crash_keys", "//third_party/crashpad/crashpad/client:client", # DumpWithoutCrash ] + @@ -162,7 +162,7 @@ index c8197e9..06adc24 100644 static_library("hook_util") { diff --git chrome_elf/crash/crash_helper.cc chrome_elf/crash/crash_helper.cc -index c658fa9..8c4a145 100644 +index 31ed150..aacbb02 100644 --- chrome_elf/crash/crash_helper.cc +++ chrome_elf/crash/crash_helper.cc @@ -11,12 +11,17 @@ @@ -196,7 +196,7 @@ index c658fa9..8c4a145 100644 g_crash_helper_enabled = true; return true; diff --git components/crash/content/app/breakpad_linux.cc components/crash/content/app/breakpad_linux.cc -index 0d3de65..a1b8b09 100644 +index 2199920..e6e8f58 100644 --- components/crash/content/app/breakpad_linux.cc +++ components/crash/content/app/breakpad_linux.cc @@ -29,6 +29,7 @@ @@ -255,7 +255,7 @@ index 0d3de65..a1b8b09 100644 if (info.pid > 0) { char pid_value_buf[kUint64StringSize]; uint64_t pid_value_len = my_uint64_len(info.pid); -@@ -2004,6 +2015,17 @@ void InitCrashReporter(const std::string& process_type) { +@@ -2011,6 +2022,17 @@ void InitCrashReporter(const std::string& process_type) { PostEnableBreakpadInitialization(); } @@ -274,7 +274,7 @@ index 0d3de65..a1b8b09 100644 void InitNonBrowserCrashReporterForAndroid(const std::string& process_type) { SanitizationInfo sanitization_info; diff --git components/crash/content/app/breakpad_linux.h components/crash/content/app/breakpad_linux.h -index 0160f62..b732498 100644 +index 4a2a429..70f3adb 100644 --- components/crash/content/app/breakpad_linux.h +++ components/crash/content/app/breakpad_linux.h @@ -16,6 +16,9 @@ namespace breakpad { @@ -416,10 +416,10 @@ index 9f69c19..2abaee00 100644 } // namespace crash_reporter diff --git components/crash/content/app/crashpad.cc components/crash/content/app/crashpad.cc -index ba04da1..aa3f21a 100644 +index ede08d7..d7caf4d 100644 --- components/crash/content/app/crashpad.cc +++ components/crash/content/app/crashpad.cc -@@ -143,7 +143,8 @@ void InitializeCrashpadImpl(bool initial_client, +@@ -139,7 +139,8 @@ void InitializeCrashpadImpl(bool initial_client, // fallback. Forwarding is turned off for debug-mode builds even for the // browser process, because the system's crash reporter can take a very long // time to chew on symbols. @@ -531,7 +531,7 @@ index 485c2b4..3b5f3ea 100644 handler_path, database_path, metrics_path, url, process_annotations, arguments, true, false); diff --git components/crash/content/app/crashpad_win.cc components/crash/content/app/crashpad_win.cc -index 6fdfd83..1d5a2a9 100644 +index 3946d2a..175fb2e 100644 --- components/crash/content/app/crashpad_win.cc +++ components/crash/content/app/crashpad_win.cc @@ -33,8 +33,8 @@ void GetPlatformCrashpadAnnotations( diff --git a/patch/patches/font_family_cache_1501.patch b/patch/patches/font_family_cache_1501.patch index 93e093738..7c7da104a 100644 --- a/patch/patches/font_family_cache_1501.patch +++ b/patch/patches/font_family_cache_1501.patch @@ -1,8 +1,8 @@ diff --git chrome/browser/font_family_cache.h chrome/browser/font_family_cache.h -index 743448d..0a9f350 100644 +index 2961f37..2ef6a30 100644 --- chrome/browser/font_family_cache.h +++ chrome/browser/font_family_cache.h -@@ -20,6 +20,8 @@ class Profile; +@@ -21,6 +21,8 @@ class Profile; FORWARD_DECLARE_TEST(FontFamilyCacheTest, Caching); diff --git a/patch/patches/gn_config.patch b/patch/patches/gn_config.patch index e628a6132..d9f19942c 100644 --- a/patch/patches/gn_config.patch +++ b/patch/patches/gn_config.patch @@ -1,8 +1,8 @@ diff --git .gn .gn -index c91f911..bd906bc 100644 +index 441b8ac..c3fe3b1 100644 --- .gn +++ .gn -@@ -261,6 +261,8 @@ exec_script_whitelist = +@@ -271,6 +271,8 @@ exec_script_whitelist = # in the Chromium repo outside of //build. "//build_overrides/build.gni", @@ -12,10 +12,10 @@ index c91f911..bd906bc 100644 # https://crbug.com/474506. "//clank/java/BUILD.gn", diff --git BUILD.gn BUILD.gn -index 9429718..1f8c486 100644 +index d274819..191ea00 100644 --- BUILD.gn +++ BUILD.gn -@@ -154,6 +154,7 @@ group("gn_all") { +@@ -170,6 +170,7 @@ group("gn_all") { if (!is_ios && !is_fuchsia) { deps += [ "//cc:cc_unittests", @@ -56,10 +56,10 @@ index 982fbe8..e757be46 100644 + "studio path") } diff --git build/toolchain/win/setup_toolchain.py build/toolchain/win/setup_toolchain.py -index e8b0849..0bfc676 100644 +index 8150d3a..39441ef 100644 --- build/toolchain/win/setup_toolchain.py +++ build/toolchain/win/setup_toolchain.py -@@ -132,18 +132,20 @@ def _LoadToolchainEnv(cpu, sdk_dir): +@@ -132,17 +132,21 @@ def _LoadToolchainEnv(cpu, sdk_dir): # variable. if 'VSINSTALLDIR' in os.environ: del os.environ['VSINSTALLDIR'] @@ -71,10 +71,9 @@ index e8b0849..0bfc676 100644 - raise Exception('%s is missing - make sure VC++ tools are installed.' % - script_path) - script_path = other_path -- # Chromium requires the 10.0.14393.0 SDK. Previous versions don't have all -- # of the required declarations, and 10.0.15063.0 is buggy. -- args = [script_path, 'amd64_x86' if cpu == 'x86' else 'amd64', -- '10.0.14393.0'] +- # Chromium requires the 10.0.14393.0 SDK or higher - previous versions don't +- # have all of the required declarations. +- args = [script_path, 'amd64_x86' if cpu == 'x86' else 'amd64'] - variables = _LoadEnvFromBat(args) + if os.path.exists(script_path): + # Chromium requires the 10.0.14393.0 SDK. Previous versions don't have all @@ -87,11 +86,12 @@ index e8b0849..0bfc676 100644 + for k in sorted(os.environ.keys()): + variables.append('%s=%s' % (str(k), str(os.environ[k]))) + variables = '\n'.join(variables) ++ return _ExtractImportantEnvironment(variables) diff --git build/vs_toolchain.py build/vs_toolchain.py -index bb8f96c..6902237 100755 +index 3b2c727..60e4984 100755 --- build/vs_toolchain.py +++ build/vs_toolchain.py @@ -79,11 +79,18 @@ def SetEnvironmentAndGetRuntimeDllDirs(): @@ -114,18 +114,18 @@ index bb8f96c..6902237 100755 # directory in order to run binaries locally, but they are needed in order # to create isolates or the mini_installer. Copying them to the output diff --git chrome/chrome_paks.gni chrome/chrome_paks.gni -index 1f9a1fc..aa69e8c 100644 +index a7778f9..5e3eb75a 100644 --- chrome/chrome_paks.gni +++ chrome/chrome_paks.gni -@@ -245,7 +245,7 @@ template("chrome_paks") { - ]) - - input_locales = locales -- output_dir = "${invoker.output_dir}/locales" -+ output_dir = "${invoker.output_dir}/chrome/locales" - - if (is_mac) { - output_locales = locales_as_mac_outputs +@@ -252,7 +252,7 @@ template("chrome_paks") { + } + + input_locales = locales +- output_dir = "${invoker.output_dir}/locales" ++ output_dir = "${invoker.output_dir}/chrome/locales" + + if (is_mac) { + output_locales = locales_as_mac_outputs diff --git chrome/installer/mini_installer/BUILD.gn chrome/installer/mini_installer/BUILD.gn index 2afab1a..c8791ea 100644 --- chrome/installer/mini_installer/BUILD.gn diff --git a/patch/patches/gritsettings.patch b/patch/patches/gritsettings.patch index 2f799ab48..ed57c6b26 100644 --- a/patch/patches/gritsettings.patch +++ b/patch/patches/gritsettings.patch @@ -1,8 +1,8 @@ diff --git tools/gritsettings/resource_ids tools/gritsettings/resource_ids -index 25abc65..04e8eab 100644 +index 9a0f5ed..9de2636 100644 --- tools/gritsettings/resource_ids +++ tools/gritsettings/resource_ids -@@ -371,4 +371,11 @@ +@@ -380,4 +380,11 @@ # Please read the header and find the right section above instead. # Resource ids starting at 31000 are reserved for projects built on Chromium. diff --git a/patch/patches/ime_1610.patch b/patch/patches/ime_1610.patch index 8a5b80436..1d9a7d589 100644 --- a/patch/patches/ime_1610.patch +++ b/patch/patches/ime_1610.patch @@ -1,8 +1,8 @@ diff --git ui/base/ime/input_method_win.cc ui/base/ime/input_method_win.cc -index e2bb528..3e851e5 100644 +index 3e33b5a..6b425cc 100644 --- ui/base/ime/input_method_win.cc +++ ui/base/ime/input_method_win.cc -@@ -682,8 +682,9 @@ bool InputMethodWin::IsWindowFocused(const TextInputClient* client) const { +@@ -688,8 +688,9 @@ bool InputMethodWin::IsWindowFocused(const TextInputClient* client) const { // receiving keyboard input as long as it is an active window. This works well // even when the |attached_window_handle| becomes active but has not received // WM_FOCUS yet. @@ -12,4 +12,4 @@ index e2bb528..3e851e5 100644 + GetActiveWindow() == ::GetAncestor(toplevel_window_handle_, GA_ROOT); } - void InputMethodWin::DispatchFabricatedKeyEvent(ui::KeyEvent* event) { + ui::EventDispatchDetails InputMethodWin::DispatchFabricatedKeyEvent( diff --git a/patch/patches/linux_build.patch b/patch/patches/linux_build.patch new file mode 100644 index 000000000..97ed9f1dc --- /dev/null +++ b/patch/patches/linux_build.patch @@ -0,0 +1,33 @@ +diff --git chrome/browser/ui/libgtkui/gtk_ui.cc chrome/browser/ui/libgtkui/gtk_ui.cc +index a38c6b8..bb4fa59 100644 +--- chrome/browser/ui/libgtkui/gtk_ui.cc ++++ chrome/browser/ui/libgtkui/gtk_ui.cc +@@ -1053,7 +1053,11 @@ float GtkUi::GetRawDeviceScaleFactor() { + return display::Display::GetForcedDeviceScaleFactor(); + + GdkScreen* screen = gdk_screen_get_default(); ++#if GTK_MAJOR_VERSION == 3 + gint scale = gtk_widget_get_scale_factor(fake_window_); ++#else ++ gint scale = 1; ++#endif + gdouble resolution = gdk_screen_get_resolution(screen); + const float scale_factor = + resolution <= 0 ? scale : resolution * scale / kDefaultDPI; +diff --git ui/accessibility/platform/ax_platform_node_auralinux.cc ui/accessibility/platform/ax_platform_node_auralinux.cc +index c73d7a9..5fcc441 100644 +--- ui/accessibility/platform/ax_platform_node_auralinux.cc ++++ ui/accessibility/platform/ax_platform_node_auralinux.cc +@@ -474,8 +474,12 @@ void AXPlatformNodeAuraLinux::GetAtkState(AtkStateSet* atk_state_set) { + atk_state_set_add_state(atk_state_set, ATK_STATE_EXPANDED); + if (data.HasState(ui::AX_STATE_FOCUSABLE)) + atk_state_set_add_state(atk_state_set, ATK_STATE_FOCUSABLE); ++#if defined(ATK_CHECK_VERSION) ++#if ATK_CHECK_VERSION(2, 11, 2) + if (data.HasState(ui::AX_STATE_HASPOPUP)) + atk_state_set_add_state(atk_state_set, ATK_STATE_HAS_POPUP); ++#endif ++#endif + if (data.HasState(ui::AX_STATE_SELECTED)) + atk_state_set_add_state(atk_state_set, ATK_STATE_SELECTED); + if (data.HasState(ui::AX_STATE_SELECTABLE)) diff --git a/patch/patches/mac_build_747693.patch b/patch/patches/mac_build_747693.patch new file mode 100755 index 000000000..1e497a6d8 --- /dev/null +++ b/patch/patches/mac_build_747693.patch @@ -0,0 +1,118 @@ +diff --git chrome/browser/ui/cocoa/autofill/autofill_popup_view_cocoa.h chrome/browser/ui/cocoa/autofill/autofill_popup_view_cocoa.h +index 18755d494cf3..3605076be5d1 100644 +--- chrome/browser/ui/cocoa/autofill/autofill_popup_view_cocoa.h ++++ chrome/browser/ui/cocoa/autofill/autofill_popup_view_cocoa.h +@@ -8,6 +8,7 @@ + #import + #include + ++#include "base/mac/availability.h" + #import "chrome/browser/ui/cocoa/autofill/autofill_popup_base_view_cocoa.h" + #import "ui/base/cocoa/touch_bar_forward_declarations.h" + +@@ -38,7 +39,7 @@ class AutofillPopupViewCocoaDelegate; + - (void)invalidateRow:(NSInteger)row; + + // Creates and returns a touch bar if the popup is for credit cards. +-- (NSTouchBar*)makeTouchBar; ++- (NSTouchBar*)makeTouchBar API_AVAILABLE(macos(10.12.2)); + + @end + +diff --git chrome/browser/ui/cocoa/autofill/autofill_popup_view_cocoa.mm chrome/browser/ui/cocoa/autofill/autofill_popup_view_cocoa.mm +index 46733a165a31..2d71d4446a36 100644 +--- chrome/browser/ui/cocoa/autofill/autofill_popup_view_cocoa.mm ++++ chrome/browser/ui/cocoa/autofill/autofill_popup_view_cocoa.mm +@@ -178,7 +178,8 @@ - (void)drawRect:(NSRect)dirtyRect { + #pragma mark NSTouchBarDelegate implementation: + + - (NSTouchBarItem*)touchBar:(NSTouchBar*)touchBar +- makeItemForIdentifier:(NSTouchBarItemIdentifier)identifier { ++ makeItemForIdentifier:(NSTouchBarItemIdentifier)identifier ++ API_AVAILABLE(macos(10.12.2)) { + if (![identifier hasSuffix:kCreditCardItemsTouchId]) + return nil; + +diff --git chrome/browser/ui/cocoa/autofill/autofill_popup_view_cocoa_unittest.mm chrome/browser/ui/cocoa/autofill/autofill_popup_view_cocoa_unittest.mm +index aebb22367472..2e6d6be61b5f 100644 +--- chrome/browser/ui/cocoa/autofill/autofill_popup_view_cocoa_unittest.mm ++++ chrome/browser/ui/cocoa/autofill/autofill_popup_view_cocoa_unittest.mm +@@ -110,31 +110,27 @@ void SetLineCount(int line_count) { + + // Tests to check if the touch bar shows up properly. + TEST_F(AutofillPopupViewCocoaUnitTest, CreditCardAutofillTouchBar) { +- if (!base::mac::IsAtLeastOS10_12()) +- return; +- +- // Touch bar shouldn't appear if the popup is not for credit cards. +- autofill_popup_controller_.SetIsCreditCardField(false); +- EXPECT_FALSE([view_ makeTouchBar]); +- +- // Touch bar shouldn't appear if the popup is empty. +- autofill_popup_controller_.SetIsCreditCardField(true); +- SetLineCount(0); +- EXPECT_FALSE([view_ makeTouchBar]); +- +- autofill_popup_controller_.SetIsCreditCardField(true); +- SetLineCount(3); +- NSTouchBar* touch_bar = [view_ makeTouchBar]; +- EXPECT_TRUE(touch_bar); +- EXPECT_TRUE([[touch_bar customizationIdentifier] +- isEqual:ui::GetTouchBarId(kCreditCardAutofillTouchBarId)]); ++ if (@available(macOS 10.12.2, *)) { ++ // Touch bar shouldn't appear if the popup is not for credit cards. ++ autofill_popup_controller_.SetIsCreditCardField(false); ++ EXPECT_FALSE([view_ makeTouchBar]); ++ ++ // Touch bar shouldn't appear if the popup is empty. ++ autofill_popup_controller_.SetIsCreditCardField(true); ++ SetLineCount(0); ++ EXPECT_FALSE([view_ makeTouchBar]); ++ ++ autofill_popup_controller_.SetIsCreditCardField(true); ++ SetLineCount(3); ++ NSTouchBar* touch_bar = [view_ makeTouchBar]; ++ EXPECT_TRUE(touch_bar); ++ EXPECT_TRUE([[touch_bar customizationIdentifier] ++ isEqual:ui::GetTouchBarId(kCreditCardAutofillTouchBarId)]); ++ } + } + +-// Tests that the touch bar logs into the histogram correctly. ++// Tests that the touch bar histogram is logged correctly. + TEST_F(AutofillPopupViewCocoaUnitTest, CreditCardAutofillTouchBarMetric) { +- if (!base::mac::IsAtLeastOS10_12()) +- return; +- + { + base::HistogramTester histogram_tester; + [view_ acceptCreditCard:nil]; +diff --git chrome/browser/ui/cocoa/tab_contents/tab_contents_controller.mm chrome/browser/ui/cocoa/tab_contents/tab_contents_controller.mm +index 5378abc9cc2a..f0e7d9e8c86c 100644 +--- chrome/browser/ui/cocoa/tab_contents/tab_contents_controller.mm ++++ chrome/browser/ui/cocoa/tab_contents/tab_contents_controller.mm +@@ -235,7 +235,10 @@ - (void)loadView { + } + + - (NSTouchBar*)makeTouchBar { +- return [touchBarController_ makeTouchBar]; ++ if (@available(macOS 10.12.2, *)) ++ return [touchBarController_ makeTouchBar]; ++ ++ return nil; + } + + - (void)ensureContentsVisibleInSuperview:(NSView*)superview { +diff --git chrome/browser/ui/cocoa/web_textfield_touch_bar_controller.h chrome/browser/ui/cocoa/web_textfield_touch_bar_controller.h +index c3dc305aa48e..d50a2689d9de 100644 +--- chrome/browser/ui/cocoa/web_textfield_touch_bar_controller.h ++++ chrome/browser/ui/cocoa/web_textfield_touch_bar_controller.h +@@ -28,7 +28,7 @@ + - (void)showCreditCardAutofillForPopupView:(AutofillPopupViewCocoa*)popupView; + + // Creates and returns a touch bar. +-- (NSTouchBar*)makeTouchBar; ++- (NSTouchBar*)makeTouchBar API_AVAILABLE(macos(10.12.2)); + + @end + diff --git a/patch/patches/message_loop_443_1992243003.patch b/patch/patches/message_loop_443_1992243003.patch index 97f4bded6..dc61edd32 100644 --- a/patch/patches/message_loop_443_1992243003.patch +++ b/patch/patches/message_loop_443_1992243003.patch @@ -1,8 +1,8 @@ diff --git base/message_loop/message_loop.h base/message_loop/message_loop.h -index fa25e78..cd62826 100644 +index 83c3191..c4c1290a 100644 --- base/message_loop/message_loop.h +++ base/message_loop/message_loop.h -@@ -288,6 +288,16 @@ class BASE_EXPORT MessageLoop : public MessagePump::Delegate, +@@ -291,6 +291,16 @@ class BASE_EXPORT MessageLoop : public MessagePump::Delegate, void AddTaskObserver(TaskObserver* task_observer); void RemoveTaskObserver(TaskObserver* task_observer); @@ -19,7 +19,7 @@ index fa25e78..cd62826 100644 // Returns true if the message loop has high resolution timers enabled. // Provided for testing. bool HasHighResolutionTasks(); -@@ -416,6 +426,12 @@ class BASE_EXPORT MessageLoop : public MessagePump::Delegate, +@@ -427,6 +437,12 @@ class BASE_EXPORT MessageLoop : public MessagePump::Delegate, // insider a (accidentally induced?) nested message pump. bool nestable_tasks_allowed_; diff --git a/patch/patches/net_filter_515.patch b/patch/patches/net_filter_515.patch index c4b197a17..5cdb41814 100644 --- a/patch/patches/net_filter_515.patch +++ b/patch/patches/net_filter_515.patch @@ -1,5 +1,5 @@ diff --git net/base/network_delegate.h net/base/network_delegate.h -index eaa1e30..18b486d 100644 +index 79a94d6..19af0d1 100644 --- net/base/network_delegate.h +++ net/base/network_delegate.h @@ -16,6 +16,7 @@ @@ -10,7 +10,7 @@ index eaa1e30..18b486d 100644 #include "net/proxy/proxy_retry_info.h" class GURL; -@@ -123,6 +124,10 @@ class NET_EXPORT NetworkDelegate : public base::NonThreadSafe { +@@ -124,6 +125,10 @@ class NET_EXPORT NetworkDelegate { bool CanUseReportingClient(const url::Origin& origin, const GURL& endpoint) const; @@ -18,14 +18,14 @@ index eaa1e30..18b486d 100644 + net::URLRequest* request, + std::unique_ptr upstream) { return upstream; } + - private: - // This is the interface for subclasses of NetworkDelegate to implement. These - // member functions will be called by the respective public notification + protected: + THREAD_CHECKER(thread_checker_); + diff --git net/url_request/url_request_job.cc net/url_request/url_request_job.cc -index 050ba28..05684c8 100644 +index 7a776d3..84c0189 100644 --- net/url_request/url_request_job.cc +++ net/url_request/url_request_job.cc -@@ -499,6 +499,12 @@ void URLRequestJob::NotifyHeadersComplete() { +@@ -532,6 +532,12 @@ void URLRequestJob::NotifyHeadersComplete() { DCHECK(!source_stream_); source_stream_ = SetUpSourceStream(); diff --git a/patch/patches/net_security_expiration_1994.patch b/patch/patches/net_security_expiration_1994.patch index 7d6a31822..57111daed 100644 --- a/patch/patches/net_security_expiration_1994.patch +++ b/patch/patches/net_security_expiration_1994.patch @@ -1,8 +1,8 @@ diff --git net/cert/ct_policy_enforcer.cc net/cert/ct_policy_enforcer.cc -index 42f631e..b02edb0 100644 +index 0dd6a0d..8bc6502d 100644 --- net/cert/ct_policy_enforcer.cc +++ net/cert/ct_policy_enforcer.cc -@@ -36,15 +36,6 @@ namespace net { +@@ -35,15 +35,6 @@ namespace net { namespace { @@ -18,8 +18,8 @@ index 42f631e..b02edb0 100644 // Returns a rounded-down months difference of |start| and |end|, // together with an indication of whether the last month was // a full month, because the range starts specified in the policy -@@ -459,4 +450,13 @@ ct::EVPolicyCompliance CTPolicyEnforcer::DoesConformToCTEVPolicy( - return details.status; +@@ -296,4 +287,13 @@ ct::CertPolicyCompliance CTPolicyEnforcer::DoesConformToCertPolicy( + return compliance; } +bool CTPolicyEnforcer::IsBuildTimely() const { @@ -33,11 +33,11 @@ index 42f631e..b02edb0 100644 + } // namespace net diff --git net/cert/ct_policy_enforcer.h net/cert/ct_policy_enforcer.h -index 7111970..f751d6c 100644 +index b594cba..285eae8 100644 --- net/cert/ct_policy_enforcer.h +++ net/cert/ct_policy_enforcer.h -@@ -101,6 +101,17 @@ class NET_EXPORT CTPolicyEnforcer { - const ct::EVCertsWhitelist* ev_whitelist, +@@ -42,6 +42,17 @@ class NET_EXPORT CTPolicyEnforcer { + X509Certificate* cert, const SCTList& verified_scts, const NetLogWithSource& net_log); + @@ -55,10 +55,10 @@ index 7111970..f751d6c 100644 } // namespace net diff --git net/http/transport_security_state.cc net/http/transport_security_state.cc -index e838cbe..d2f6f0f 100644 +index 4ffe9e8..013cea5 100644 --- net/http/transport_security_state.cc +++ net/http/transport_security_state.cc -@@ -1537,8 +1537,10 @@ void TransportSecurityState::ClearReportCachesForTesting() { +@@ -1550,8 +1550,10 @@ void TransportSecurityState::ClearReportCachesForTesting() { sent_expect_ct_reports_cache_.Clear(); } @@ -72,10 +72,10 @@ index e838cbe..d2f6f0f 100644 // We consider built-in information to be timely for 10 weeks. return (base::Time::Now() - build_time).InDays() < 70 /* 10 weeks */; diff --git net/http/transport_security_state.h net/http/transport_security_state.h -index 19ba839..a0b9810 100644 +index 5e75551..1d1ca02 100644 --- net/http/transport_security_state.h +++ net/http/transport_security_state.h -@@ -576,6 +576,10 @@ class NET_EXPORT TransportSecurityState +@@ -574,6 +574,10 @@ class NET_EXPORT TransportSecurityState { // Expect-CT reports. void ClearReportCachesForTesting(); @@ -86,7 +86,7 @@ index 19ba839..a0b9810 100644 private: friend class TransportSecurityStateTest; friend class TransportSecurityStateStaticFuzzer; -@@ -596,7 +600,7 @@ class NET_EXPORT TransportSecurityState +@@ -594,7 +598,7 @@ class NET_EXPORT TransportSecurityState { // IsBuildTimely returns true if the current build is new enough ensure that // built in security information (i.e. HSTS preloading and pinning // information) is timely. @@ -95,7 +95,7 @@ index 19ba839..a0b9810 100644 // Helper method for actually checking pins. PKPStatus CheckPublicKeyPinsImpl( -@@ -704,6 +708,8 @@ class NET_EXPORT TransportSecurityState +@@ -703,6 +707,8 @@ class NET_EXPORT TransportSecurityState { // True if public key pinning bypass is enabled for local trust anchors. bool enable_pkp_bypass_for_local_trust_anchors_; diff --git a/patch/patches/net_urlrequest_1327.patch b/patch/patches/net_urlrequest_1327.patch index 5364156a6..41143eb11 100644 --- a/patch/patches/net_urlrequest_1327.patch +++ b/patch/patches/net_urlrequest_1327.patch @@ -1,8 +1,8 @@ diff --git net/url_request/url_request.h net/url_request/url_request.h -index 95a2667..68d7bfb 100644 +index e529c37..9039974 100644 --- net/url_request/url_request.h +++ net/url_request/url_request.h -@@ -657,10 +657,10 @@ class NET_EXPORT URLRequest : NON_EXPORTED_BASE(public base::NonThreadSafe), +@@ -667,10 +667,10 @@ class NET_EXPORT URLRequest : public base::SupportsUserData { return traffic_annotation_; } diff --git a/patch/patches/network_change_721461.patch b/patch/patches/network_change_721461.patch deleted file mode 100644 index 810a191b4..000000000 --- a/patch/patches/network_change_721461.patch +++ /dev/null @@ -1,136 +0,0 @@ -diff --git net/base/network_change_notifier_win.cc net/base/network_change_notifier_win.cc -index 9b2b35e..1dc2038 100644 ---- net/base/network_change_notifier_win.cc -+++ net/base/network_change_notifier_win.cc -@@ -14,6 +14,7 @@ - #include "base/message_loop/message_loop.h" - #include "base/metrics/histogram_macros.h" - #include "base/single_thread_task_runner.h" -+#include "base/task_runner_util.h" - #include "base/threading/thread.h" - #include "base/threading/thread_task_runner_handle.h" - #include "base/time/time.h" -@@ -136,8 +137,6 @@ NetworkChangeNotifierWin::NetworkChangeCalculatorParamsWin() { - // - NetworkChangeNotifier::ConnectionType - NetworkChangeNotifierWin::RecomputeCurrentConnectionType() const { -- DCHECK(CalledOnValidThread()); -- - EnsureWinsockInit(); - - // The following code was adapted from: -@@ -205,6 +204,18 @@ NetworkChangeNotifierWin::RecomputeCurrentConnectionType() const { - : NetworkChangeNotifier::CONNECTION_NONE; - } - -+void NetworkChangeNotifierWin::RecomputeCurrentConnectionTypeOnDnsThread( -+ base::Callback reply_callback) const { -+ // Unretained is safe in this call because this object owns the thread and the -+ // thread is stopped in this object's destructor. -+ base::PostTaskAndReplyWithResult( -+ dns_config_service_thread_->message_loop()->task_runner().get(), -+ FROM_HERE, -+ base::Bind(&NetworkChangeNotifierWin::RecomputeCurrentConnectionType, -+ base::Unretained(this)), -+ reply_callback); -+} -+ - NetworkChangeNotifier::ConnectionType - NetworkChangeNotifierWin::GetCurrentConnectionType() const { - base::AutoLock auto_lock(last_computed_connection_type_lock_); -@@ -225,12 +236,13 @@ void NetworkChangeNotifierWin::OnObjectSignaled(HANDLE object) { - // Start watching for the next address change. - WatchForAddressChange(); - -- NotifyObservers(); -+ RecomputeCurrentConnectionTypeOnDnsThread(base::Bind( -+ &NetworkChangeNotifierWin::NotifyObservers, weak_factory_.GetWeakPtr())); - } - --void NetworkChangeNotifierWin::NotifyObservers() { -+void NetworkChangeNotifierWin::NotifyObservers(ConnectionType connection_type) { - DCHECK(CalledOnValidThread()); -- SetCurrentConnectionType(RecomputeCurrentConnectionType()); -+ SetCurrentConnectionType(connection_type); - NotifyObserversOfIPAddressChange(); - - // Calling GetConnectionType() at this very moment is likely to give -@@ -274,8 +286,11 @@ void NetworkChangeNotifierWin::WatchForAddressChange() { - // Treat the transition from NotifyAddrChange failing to succeeding as a - // network change event, since network changes were not being observed in - // that interval. -- if (sequential_failures_ > 0) -- NotifyObservers(); -+ if (sequential_failures_ > 0) { -+ RecomputeCurrentConnectionTypeOnDnsThread( -+ base::Bind(&NetworkChangeNotifierWin::NotifyObservers, -+ weak_factory_.GetWeakPtr())); -+ } - - if (sequential_failures_ < 2000) { - UMA_HISTOGRAM_COUNTS_10000("Net.NotifyAddrChangeFailures", -@@ -305,7 +320,14 @@ bool NetworkChangeNotifierWin::WatchForAddressChangeInternal() { - } - - void NetworkChangeNotifierWin::NotifyParentOfConnectionTypeChange() { -- SetCurrentConnectionType(RecomputeCurrentConnectionType()); -+ RecomputeCurrentConnectionTypeOnDnsThread(base::Bind( -+ &NetworkChangeNotifierWin::NotifyParentOfConnectionTypeChangeImpl, -+ weak_factory_.GetWeakPtr())); -+} -+ -+void NetworkChangeNotifierWin::NotifyParentOfConnectionTypeChangeImpl( -+ ConnectionType connection_type) { -+ SetCurrentConnectionType(connection_type); - bool current_offline = IsOffline(); - offline_polls_++; - // If we continue to appear offline, delay sending out the notification in -@@ -323,10 +345,10 @@ void NetworkChangeNotifierWin::NotifyParentOfConnectionTypeChange() { - - NotifyObserversOfConnectionTypeChange(); - double max_bandwidth_mbps = 0.0; -- ConnectionType connection_type = CONNECTION_NONE; -+ ConnectionType max_connection_type = CONNECTION_NONE; - GetCurrentMaxBandwidthAndConnectionType(&max_bandwidth_mbps, -- &connection_type); -- NotifyObserversOfMaxBandwidthChange(max_bandwidth_mbps, connection_type); -+ &max_connection_type); -+ NotifyObserversOfMaxBandwidthChange(max_bandwidth_mbps, max_connection_type); - } - - } // namespace net -diff --git net/base/network_change_notifier_win.h net/base/network_change_notifier_win.h -index 94bab7f..6871499 100644 ---- net/base/network_change_notifier_win.h -+++ net/base/network_change_notifier_win.h -@@ -9,6 +9,7 @@ - - #include - -+#include "base/callback.h" - #include "base/compiler_specific.h" - #include "base/macros.h" - #include "base/memory/weak_ptr.h" -@@ -62,15 +63,21 @@ class NET_EXPORT_PRIVATE NetworkChangeNotifierWin - // It is not thread safe, see crbug.com/324913. - virtual ConnectionType RecomputeCurrentConnectionType() const; - -+ // Calls RecomputeCurrentConnectionTypeImpl on the DNS thread and runs -+ // |reply_callback| with the type on the calling thread. -+ virtual void RecomputeCurrentConnectionTypeOnDnsThread( -+ base::Callback reply_callback) const; -+ - void SetCurrentConnectionType(ConnectionType connection_type); - - // Notifies IP address change observers of a change immediately, and notifies - // network state change observers on a delay. Must only be called on the - // thread |this| was created on. -- void NotifyObservers(); -+ void NotifyObservers(ConnectionType connection_type); - - // Forwards connection type notifications to parent class. - void NotifyParentOfConnectionTypeChange(); -+ void NotifyParentOfConnectionTypeChangeImpl(ConnectionType connection_type); - - // Tries to start listening for a single subsequent address change. Returns - // false on failure. The caller is responsible for updating |is_watching_|. diff --git a/patch/patches/pdfium_print_549365.patch b/patch/patches/pdfium_print_549365.patch index 5310c5f4d..444d53186 100644 --- a/patch/patches/pdfium_print_549365.patch +++ b/patch/patches/pdfium_print_549365.patch @@ -1,8 +1,8 @@ diff --git BUILD.gn BUILD.gn -index 5802752..94c247e 100644 +index 80a258e..7f343f1 100644 --- BUILD.gn +++ BUILD.gn -@@ -222,6 +222,10 @@ static_library("pdfium") { +@@ -227,6 +227,10 @@ static_library("pdfium") { if (pdf_is_complete_lib) { complete_static_lib = true } @@ -14,18 +14,18 @@ index 5802752..94c247e 100644 static_library("test_support") { diff --git fpdfsdk/fpdfview.cpp fpdfsdk/fpdfview.cpp -index f20e8ab..bc34b85 100644 +index 7dbaf7f..3b41421 100644 --- fpdfsdk/fpdfview.cpp +++ fpdfsdk/fpdfview.cpp -@@ -35,6 +35,7 @@ +@@ -37,6 +37,7 @@ #include "fpdfsdk/fsdk_define.h" #include "fpdfsdk/fsdk_pauseadapter.h" #include "fpdfsdk/javascript/ijs_runtime.h" +#include "fxjs/fxjs_v8.h" + #include "public/fpdf_edit.h" #include "public/fpdf_ext.h" #include "public/fpdf_progressive.h" - #include "third_party/base/allocator/partition_allocator/partition_alloc.h" -@@ -382,6 +383,7 @@ DLLEXPORT void STDCALL FPDF_DestroyLibrary() { +@@ -419,6 +420,7 @@ DLLEXPORT void STDCALL FPDF_DestroyLibrary() { CPDF_ModuleMgr::Destroy(); CFX_GEModule::Destroy(); diff --git a/patch/patches/prefs_content_1161.patch b/patch/patches/prefs_content_1161.patch index 447ee19df..6fa3d3b84 100644 --- a/patch/patches/prefs_content_1161.patch +++ b/patch/patches/prefs_content_1161.patch @@ -1,5 +1,5 @@ diff --git content/public/common/common_param_traits_macros.h content/public/common/common_param_traits_macros.h -index 5ff2bb0..a1a62f2 100644 +index 95656cd..35f26f1 100644 --- content/public/common/common_param_traits_macros.h +++ content/public/common/common_param_traits_macros.h @@ -205,6 +205,7 @@ IPC_STRUCT_TRAITS_BEGIN(content::WebPreferences) @@ -11,7 +11,7 @@ index 5ff2bb0..a1a62f2 100644 IPC_STRUCT_TRAITS_MEMBER(navigate_on_drag_drop) IPC_STRUCT_TRAITS_MEMBER(spatial_navigation_enabled) diff --git content/public/common/web_preferences.cc content/public/common/web_preferences.cc -index 1e00ba5..d829b4f 100644 +index 767e91c..34f59fe 100644 --- content/public/common/web_preferences.cc +++ content/public/common/web_preferences.cc @@ -171,6 +171,7 @@ WebPreferences::WebPreferences() @@ -20,25 +20,25 @@ index 1e00ba5..d829b4f 100644 navigate_on_drag_drop(true), + base_background_color(0xFFFFFFFF), // Color::white v8_cache_options(V8_CACHE_OPTIONS_DEFAULT), - inert_visual_viewport(false), record_whole_document(false), + cookie_enabled(true), diff --git content/public/common/web_preferences.h content/public/common/web_preferences.h -index 80816ae..46de601 100644 +index 5012952..ed17a57 100644 --- content/public/common/web_preferences.h +++ content/public/common/web_preferences.h -@@ -190,6 +190,7 @@ struct CONTENT_EXPORT WebPreferences { +@@ -191,6 +191,7 @@ struct CONTENT_EXPORT WebPreferences { bool spatial_navigation_enabled; bool use_solid_color_scrollbars; bool navigate_on_drag_drop; + uint32_t base_background_color; V8CacheOptions v8_cache_options; - bool inert_visual_viewport; bool record_whole_document; + diff --git content/renderer/render_view_impl.cc content/renderer/render_view_impl.cc -index de3e891..d703c8e 100644 +index f26cc78..fab85a3 100644 --- content/renderer/render_view_impl.cc +++ content/renderer/render_view_impl.cc -@@ -1396,6 +1396,8 @@ void RenderViewImpl::ApplyWebPreferencesInternal( +@@ -1317,6 +1317,8 @@ void RenderViewImpl::ApplyWebPreferencesInternal( blink::WebView* web_view, CompositorDependencies* compositor_deps) { ApplyWebPreferences(prefs, web_view); diff --git a/patch/patches/print_header_footer_1478_1565.patch b/patch/patches/print_header_footer_1478_1565.patch index 5ea26c56e..aa02ae8cb 100644 --- a/patch/patches/print_header_footer_1478_1565.patch +++ b/patch/patches/print_header_footer_1478_1565.patch @@ -78,7 +78,7 @@ index de03634..76ee3a7 100644 } -#endif // BUILDFLAG(ENABLE_PRINT_PREVIEW) diff --git components/printing/common/print_messages.h components/printing/common/print_messages.h -index 32b0451..9ccb733 100644 +index fd39591..fbeea6d 100644 --- components/printing/common/print_messages.h +++ components/printing/common/print_messages.h @@ -74,7 +74,6 @@ struct PrintMsg_PrintPages_Params { @@ -168,15 +168,15 @@ index 32b0451..9ccb733 100644 // Messages sent from the renderer to the browser. -@@ -403,7 +393,6 @@ IPC_MESSAGE_CONTROL2(PrintHostMsg_TempFileForPrintingWritten, - int /* fd in browser */) +@@ -404,7 +394,6 @@ IPC_MESSAGE_CONTROL3(PrintHostMsg_TempFileForPrintingWritten, + int /* page count */) #endif // defined(OS_ANDROID) -#if BUILDFLAG(ENABLE_PRINT_PREVIEW) // Asks the browser to do print preview. IPC_MESSAGE_ROUTED1(PrintHostMsg_RequestPrintPreview, PrintHostMsg_RequestPrintPreview_Params /* params */) -@@ -437,7 +426,6 @@ IPC_SYNC_MESSAGE_ROUTED2_1(PrintHostMsg_CheckForCancel, +@@ -438,7 +427,6 @@ IPC_SYNC_MESSAGE_ROUTED2_1(PrintHostMsg_CheckForCancel, // The memory handle in this message is already valid in the browser process. IPC_MESSAGE_ROUTED1(PrintHostMsg_MetafileReadyForPrinting, PrintHostMsg_DidPreviewDocument_Params /* params */) @@ -184,7 +184,7 @@ index 32b0451..9ccb733 100644 // This is sent when there are invalid printer settings. IPC_MESSAGE_ROUTED0(PrintHostMsg_ShowInvalidPrinterSettingsError) -@@ -446,7 +434,6 @@ IPC_MESSAGE_ROUTED0(PrintHostMsg_ShowInvalidPrinterSettingsError) +@@ -447,7 +435,6 @@ IPC_MESSAGE_ROUTED0(PrintHostMsg_ShowInvalidPrinterSettingsError) IPC_MESSAGE_ROUTED1(PrintHostMsg_PrintingFailed, int /* document cookie */) @@ -192,13 +192,13 @@ index 32b0451..9ccb733 100644 // Tell the browser print preview failed. IPC_MESSAGE_ROUTED1(PrintHostMsg_PrintPreviewFailed, int /* document cookie */) -@@ -473,4 +460,3 @@ IPC_MESSAGE_ROUTED1(PrintHostMsg_ShowScriptedPrintPreview, +@@ -474,4 +461,3 @@ IPC_MESSAGE_ROUTED1(PrintHostMsg_ShowScriptedPrintPreview, // Notify the browser to set print presets based on source PDF document. IPC_MESSAGE_ROUTED1(PrintHostMsg_SetOptionsFromDocument, PrintHostMsg_SetOptionsFromDocument_Params /* params */) -#endif // BUILDFLAG(ENABLE_PRINT_PREVIEW) diff --git components/printing/renderer/print_web_view_helper.cc components/printing/renderer/print_web_view_helper.cc -index 3c3c4b1..b07223d 100644 +index 3c9dfc0..e6a3236 100644 --- components/printing/renderer/print_web_view_helper.cc +++ components/printing/renderer/print_web_view_helper.cc @@ -320,7 +320,6 @@ bool PrintingNodeOrPdfFrame(const blink::WebLocalFrame* frame, @@ -233,7 +233,7 @@ index 3c3c4b1..b07223d 100644 // Helper function to scale and round an integer value with a double valued // scaling. -@@ -916,6 +912,7 @@ PrintWebViewHelper::PrintWebViewHelper(content::RenderFrame* render_frame, +@@ -938,6 +934,7 @@ PrintWebViewHelper::PrintWebViewHelper(content::RenderFrame* render_frame, print_for_preview_(false), delegate_(std::move(delegate)), print_node_in_progress_(false), @@ -241,7 +241,7 @@ index 3c3c4b1..b07223d 100644 is_loading_(false), is_scripted_preview_delayed_(false), ipc_nesting_level_(0), -@@ -978,10 +975,8 @@ void PrintWebViewHelper::ScriptedPrint(bool user_initiated) { +@@ -1000,10 +997,8 @@ void PrintWebViewHelper::ScriptedPrint(bool user_initiated) { return; if (g_is_preview_enabled) { @@ -252,7 +252,7 @@ index 3c3c4b1..b07223d 100644 } else { #if BUILDFLAG(ENABLE_BASIC_PRINTING) Print(web_frame, blink::WebNode(), true /* is_scripted? */); -@@ -1007,14 +1002,10 @@ bool PrintWebViewHelper::OnMessageReceived(const IPC::Message& message) { +@@ -1029,14 +1024,10 @@ bool PrintWebViewHelper::OnMessageReceived(const IPC::Message& message) { IPC_MESSAGE_HANDLER(PrintMsg_PrintPages, OnPrintPages) IPC_MESSAGE_HANDLER(PrintMsg_PrintForSystemDialog, OnPrintForSystemDialog) #endif // BUILDFLAG(ENABLE_BASIC_PRINTING) @@ -267,7 +267,7 @@ index 3c3c4b1..b07223d 100644 IPC_MESSAGE_HANDLER(PrintMsg_SetPrintingEnabled, OnSetPrintingEnabled) IPC_MESSAGE_UNHANDLED(handled = false) IPC_END_MESSAGE_MAP() -@@ -1062,7 +1053,6 @@ void PrintWebViewHelper::OnPrintForSystemDialog() { +@@ -1084,7 +1075,6 @@ void PrintWebViewHelper::OnPrintForSystemDialog() { } #endif // BUILDFLAG(ENABLE_BASIC_PRINTING) @@ -275,7 +275,7 @@ index 3c3c4b1..b07223d 100644 void PrintWebViewHelper::OnPrintForPrintPreview( const base::DictionaryValue& job_settings) { CHECK_LE(ipc_nesting_level_, 1); -@@ -1122,7 +1112,6 @@ void PrintWebViewHelper::OnPrintForPrintPreview( +@@ -1144,7 +1134,6 @@ void PrintWebViewHelper::OnPrintForPrintPreview( DidFinishPrinting(FAIL_PRINT); } } @@ -283,7 +283,7 @@ index 3c3c4b1..b07223d 100644 void PrintWebViewHelper::GetPageSizeAndContentAreaFromPageLayout( const PageSizeMargins& page_layout_in_points, -@@ -1147,7 +1136,6 @@ void PrintWebViewHelper::UpdateFrameMarginsCssInfo( +@@ -1169,7 +1158,6 @@ void PrintWebViewHelper::UpdateFrameMarginsCssInfo( ignore_css_margins_ = (margins_type != DEFAULT_MARGINS); } @@ -291,7 +291,7 @@ index 3c3c4b1..b07223d 100644 void PrintWebViewHelper::OnPrintPreview(const base::DictionaryValue& settings) { if (ipc_nesting_level_ > 1) return; -@@ -1342,7 +1330,7 @@ bool PrintWebViewHelper::CreatePreviewDocument() { +@@ -1361,7 +1349,7 @@ bool PrintWebViewHelper::CreatePreviewDocument() { return true; } @@ -300,7 +300,7 @@ index 3c3c4b1..b07223d 100644 bool PrintWebViewHelper::RenderPreviewPage( int page_number, const PrintMsg_Print_Params& print_params) { -@@ -1371,7 +1359,7 @@ bool PrintWebViewHelper::RenderPreviewPage( +@@ -1390,7 +1378,7 @@ bool PrintWebViewHelper::RenderPreviewPage( } return PreviewPageRendered(page_number, draft_metafile.get()); } @@ -309,7 +309,7 @@ index 3c3c4b1..b07223d 100644 bool PrintWebViewHelper::FinalizePrintReadyDocument() { DCHECK(!is_print_ready_metafile_sent_); -@@ -1401,7 +1389,6 @@ bool PrintWebViewHelper::FinalizePrintReadyDocument() { +@@ -1420,7 +1408,6 @@ bool PrintWebViewHelper::FinalizePrintReadyDocument() { Send(new PrintHostMsg_MetafileReadyForPrinting(routing_id(), preview_params)); return true; } @@ -317,7 +317,7 @@ index 3c3c4b1..b07223d 100644 void PrintWebViewHelper::OnPrintingDone(bool success) { if (ipc_nesting_level_ > 1) -@@ -1416,7 +1403,6 @@ void PrintWebViewHelper::OnSetPrintingEnabled(bool enabled) { +@@ -1435,7 +1422,6 @@ void PrintWebViewHelper::OnSetPrintingEnabled(bool enabled) { is_printing_enabled_ = enabled; } @@ -325,7 +325,7 @@ index 3c3c4b1..b07223d 100644 void PrintWebViewHelper::OnInitiatePrintPreview(bool has_selection) { if (ipc_nesting_level_ > 1) return; -@@ -1427,7 +1413,9 @@ void PrintWebViewHelper::OnInitiatePrintPreview(bool has_selection) { +@@ -1446,7 +1432,9 @@ void PrintWebViewHelper::OnInitiatePrintPreview(bool has_selection) { // that instead. auto plugin = delegate_->GetPdfElement(frame); if (!plugin.IsNull()) { @@ -335,7 +335,7 @@ index 3c3c4b1..b07223d 100644 return; } print_preview_context_.InitWithFrame(frame); -@@ -1435,7 +1423,6 @@ void PrintWebViewHelper::OnInitiatePrintPreview(bool has_selection) { +@@ -1454,7 +1442,6 @@ void PrintWebViewHelper::OnInitiatePrintPreview(bool has_selection) { ? PRINT_PREVIEW_USER_INITIATED_SELECTION : PRINT_PREVIEW_USER_INITIATED_ENTIRE_FRAME); } @@ -343,7 +343,7 @@ index 3c3c4b1..b07223d 100644 bool PrintWebViewHelper::IsPrintingEnabled() const { return is_printing_enabled_; -@@ -1457,11 +1444,9 @@ void PrintWebViewHelper::PrintNode(const blink::WebNode& node) { +@@ -1476,11 +1463,9 @@ void PrintWebViewHelper::PrintNode(const blink::WebNode& node) { print_node_in_progress_ = true; @@ -356,23 +356,23 @@ index 3c3c4b1..b07223d 100644 } else { #if BUILDFLAG(ENABLE_BASIC_PRINTING) // Make a copy of the node, in case RenderView::OnContextMenuClosed() resets -@@ -1550,7 +1535,6 @@ void PrintWebViewHelper::DidFinishPrinting(PrintingResult result) { +@@ -1570,7 +1555,6 @@ void PrintWebViewHelper::DidFinishPrinting(PrintingResult result) { } break; -#if BUILDFLAG(ENABLE_PRINT_PREVIEW) case FAIL_PREVIEW: - int cookie = - print_pages_params_ ? print_pages_params_->params.document_cookie : 0; -@@ -1562,7 +1546,6 @@ void PrintWebViewHelper::DidFinishPrinting(PrintingResult result) { - } - print_preview_context_.Failed(notify_browser_of_print_failure_); + if (!is_print_ready_metafile_sent_) { + if (notify_browser_of_print_failure_) { +@@ -1587,7 +1571,6 @@ void PrintWebViewHelper::DidFinishPrinting(PrintingResult result) { + cookie)); + print_preview_context_.Failed(false); break; -#endif // BUILDFLAG(ENABLE_PRINT_PREVIEW) } prep_frame_view_.reset(); print_pages_params_.reset(); -@@ -1695,7 +1678,6 @@ bool PrintWebViewHelper::CalculateNumberOfPages(blink::WebLocalFrame* frame, +@@ -1720,7 +1703,6 @@ bool PrintWebViewHelper::CalculateNumberOfPages(blink::WebLocalFrame* frame, return true; } @@ -380,7 +380,7 @@ index 3c3c4b1..b07223d 100644 bool PrintWebViewHelper::SetOptionsFromPdfDocument( PrintHostMsg_SetOptionsFromDocument_Params* options) { blink::WebLocalFrame* source_frame = print_preview_context_.source_frame(); -@@ -1802,7 +1784,6 @@ bool PrintWebViewHelper::UpdatePrintSettings( +@@ -1827,7 +1809,6 @@ bool PrintWebViewHelper::UpdatePrintSettings( print_preview_context_.set_error(PREVIEW_ERROR_INVALID_PRINTER_SETTINGS); return false; } @@ -388,7 +388,7 @@ index 3c3c4b1..b07223d 100644 #if BUILDFLAG(ENABLE_BASIC_PRINTING) void PrintWebViewHelper::GetPrintSettingsFromUser( -@@ -1960,7 +1941,6 @@ bool PrintWebViewHelper::CopyMetafileDataToSharedMem( +@@ -1985,7 +1966,6 @@ bool PrintWebViewHelper::CopyMetafileDataToSharedMem( return true; } @@ -396,7 +396,7 @@ index 3c3c4b1..b07223d 100644 void PrintWebViewHelper::ShowScriptedPrintPreview() { if (is_scripted_preview_delayed_) { is_scripted_preview_delayed_ = false; -@@ -2091,7 +2071,6 @@ bool PrintWebViewHelper::PreviewPageRendered(int page_number, +@@ -2116,7 +2096,6 @@ bool PrintWebViewHelper::PreviewPageRendered(int page_number, Send(new PrintHostMsg_DidPreviewPage(routing_id(), preview_page_params)); return true; } @@ -405,15 +405,16 @@ index 3c3c4b1..b07223d 100644 PrintWebViewHelper::PrintPreviewContext::PrintPreviewContext() : total_page_count_(0), diff --git components/printing/renderer/print_web_view_helper.h components/printing/renderer/print_web_view_helper.h -index c4339d4..433fb26 100644 +index fc5e964..ed384ba 100644 --- components/printing/renderer/print_web_view_helper.h +++ components/printing/renderer/print_web_view_helper.h -@@ -153,9 +153,7 @@ class PrintWebViewHelper +@@ -152,10 +152,8 @@ class PrintWebViewHelper OK, FAIL_PRINT_INIT, FAIL_PRINT, -#if BUILDFLAG(ENABLE_PRINT_PREVIEW) FAIL_PREVIEW, + INVALID_SETTINGS, -#endif }; diff --git a/patch/patches/printing_context_2196.patch b/patch/patches/printing_context_2196.patch index 93e202930..b523cfcc5 100644 --- a/patch/patches/printing_context_2196.patch +++ b/patch/patches/printing_context_2196.patch @@ -1,8 +1,8 @@ diff --git chrome/browser/printing/print_job_worker.cc chrome/browser/printing/print_job_worker.cc -index d06b61a..f41f848 100644 +index 5616013..6d3737d 100644 --- chrome/browser/printing/print_job_worker.cc +++ chrome/browser/printing/print_job_worker.cc -@@ -121,6 +121,7 @@ PrintJobWorker::PrintJobWorker(int render_process_id, +@@ -125,6 +125,7 @@ PrintJobWorker::PrintJobWorker(int render_process_id, printing_context_delegate_ = base::MakeUnique( render_process_id, render_frame_id); printing_context_ = PrintingContext::Create(printing_context_delegate_.get()); diff --git a/patch/patches/render_view_host_impl_1392.patch b/patch/patches/render_view_host_impl_1392.patch index 19cca23db..7d0ab466c 100644 --- a/patch/patches/render_view_host_impl_1392.patch +++ b/patch/patches/render_view_host_impl_1392.patch @@ -1,8 +1,8 @@ diff --git content/browser/renderer_host/render_view_host_impl.h content/browser/renderer_host/render_view_host_impl.h -index c36ebdd..48aa3571 100644 +index 7e0cc57..66916d4 100644 --- content/browser/renderer_host/render_view_host_impl.h +++ content/browser/renderer_host/render_view_host_impl.h -@@ -154,6 +154,7 @@ class CONTENT_EXPORT RenderViewHostImpl : public RenderViewHost, +@@ -155,6 +155,7 @@ class CONTENT_EXPORT RenderViewHostImpl : public RenderViewHost, void set_is_swapped_out(bool is_swapped_out) { is_swapped_out_ = is_swapped_out; } diff --git a/patch/patches/rwh_background_color_1984.patch b/patch/patches/rwh_background_color_1984.patch index be33a17ed..5bb4d09d3 100644 --- a/patch/patches/rwh_background_color_1984.patch +++ b/patch/patches/rwh_background_color_1984.patch @@ -1,8 +1,8 @@ diff --git content/browser/renderer_host/render_widget_host_view_aura.cc content/browser/renderer_host/render_widget_host_view_aura.cc -index e327836..17f65e1 100644 +index 91e326b..8f22548 100644 --- content/browser/renderer_host/render_widget_host_view_aura.cc +++ content/browser/renderer_host/render_widget_host_view_aura.cc -@@ -747,8 +747,10 @@ void RenderWidgetHostViewAura::UpdateBackgroundColorFromRenderer( +@@ -740,8 +740,10 @@ void RenderWidgetHostViewAura::UpdateBackgroundColorFromRenderer( background_color_ = color; bool opaque = SkColorGetA(color) == SK_AlphaOPAQUE; diff --git a/patch/patches/sandbox_2220.patch b/patch/patches/sandbox_2220.patch deleted file mode 100644 index d23d4d008..000000000 --- a/patch/patches/sandbox_2220.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git base/allocator/BUILD.gn base/allocator/BUILD.gn -index 6ebbc11..b667064 100644 ---- base/allocator/BUILD.gn -+++ base/allocator/BUILD.gn -@@ -15,8 +15,7 @@ declare_args() { - - # The Windows-only allocator shim is only enabled for Release static builds, and - # is mutually exclusive with the generalized shim. --win_use_allocator_shim = is_win && !is_component_build && !is_debug && -- !use_allocator_shim && !is_asan -+win_use_allocator_shim = false - - # This "allocator" meta-target will forward to the default allocator according - # to the build settings. diff --git a/patch/patches/service_factory_1680.patch b/patch/patches/service_factory_1680.patch index 92c968bba..a7d88040a 100644 --- a/patch/patches/service_factory_1680.patch +++ b/patch/patches/service_factory_1680.patch @@ -1,5 +1,5 @@ diff --git chrome/browser/spellchecker/spellcheck_factory.cc chrome/browser/spellchecker/spellcheck_factory.cc -index 9d94c21..990046f 100644 +index a866993..520e2d9 100644 --- chrome/browser/spellchecker/spellcheck_factory.cc +++ chrome/browser/spellchecker/spellcheck_factory.cc @@ -17,6 +17,13 @@ @@ -97,7 +97,7 @@ index 2907619..f941fba 100644 SupervisedUserSettingsServiceFactory(); diff --git chrome/browser/ui/prefs/prefs_tab_helper.cc chrome/browser/ui/prefs/prefs_tab_helper.cc -index 175e4db..e5361c5 100644 +index 4d4fd0e..e5bb39ad 100644 --- chrome/browser/ui/prefs/prefs_tab_helper.cc +++ chrome/browser/ui/prefs/prefs_tab_helper.cc @@ -11,8 +11,8 @@ @@ -110,7 +110,7 @@ index 175e4db..e5361c5 100644 #include "base/strings/string_number_conversions.h" #include "base/strings/string_util.h" #include "base/strings/stringprintf.h" -@@ -438,12 +438,10 @@ class PrefWatcherFactory : public BrowserContextKeyedServiceFactory { +@@ -432,12 +432,10 @@ class PrefWatcherFactory : public BrowserContextKeyedServiceFactory { GetInstance()->GetServiceForBrowserContext(profile, true)); } @@ -125,7 +125,7 @@ index 175e4db..e5361c5 100644 PrefWatcherFactory() : BrowserContextKeyedServiceFactory( "PrefWatcher", -@@ -464,6 +462,18 @@ class PrefWatcherFactory : public BrowserContextKeyedServiceFactory { +@@ -458,6 +456,18 @@ class PrefWatcherFactory : public BrowserContextKeyedServiceFactory { } }; diff --git a/patch/patches/service_manager_654986.patch b/patch/patches/service_manager_654986.patch index e68808b69..42a311dfa 100644 --- a/patch/patches/service_manager_654986.patch +++ b/patch/patches/service_manager_654986.patch @@ -1,8 +1,8 @@ diff --git services/service_manager/embedder/main.cc services/service_manager/embedder/main.cc -index e661492..8a282fd 100644 +index 7acf0e4..b5c0efa 100644 --- services/service_manager/embedder/main.cc +++ services/service_manager/embedder/main.cc -@@ -325,13 +325,30 @@ int RunService(MainDelegate* delegate) { +@@ -317,13 +317,30 @@ int RunService(MainDelegate* delegate) { return exit_code; } @@ -34,7 +34,7 @@ index e661492..8a282fd 100644 MainDelegate* delegate = params.delegate; DCHECK(delegate); -@@ -399,30 +416,14 @@ int Main(const MainParams& params) { +@@ -391,30 +408,14 @@ int Main(const MainParams& params) { MainDelegate::InitializeParams init_params; #if defined(OS_MACOSX) @@ -95,7 +95,7 @@ index e661492..8a282fd 100644 if (tracker) { if (exit_code == 0) { tracker->SetProcessPhaseIfEnabled( -@@ -481,14 +494,39 @@ int Main(const MainParams& params) { +@@ -481,13 +494,38 @@ int Main(const MainParams& params) { } } @@ -117,7 +117,6 @@ index e661492..8a282fd 100644 delegate->ShutDownEmbedderProcess(); +} -- return exit_code; +int Main(MainParams& params) { +#if defined(OS_MACOSX) + // We need this pool for all the objects created before we get to the event @@ -133,10 +132,9 @@ index e661492..8a282fd 100644 + return exit_code; + exit_code = MainRun(params); + MainShutdown(params); -+ return exit_code; + return exit_code; } - } // namespace service_manager diff --git services/service_manager/embedder/main.h services/service_manager/embedder/main.h index e86697a..771acd8 100644 --- services/service_manager/embedder/main.h diff --git a/patch/patches/software_renderer_729363.patch b/patch/patches/software_renderer_729363.patch deleted file mode 100644 index 1526ec85a..000000000 --- a/patch/patches/software_renderer_729363.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff --git cc/output/software_renderer.cc cc/output/software_renderer.cc -index 34eda97..6fc30a0 100644 ---- cc/output/software_renderer.cc -+++ cc/output/software_renderer.cc -@@ -152,7 +152,16 @@ void SoftwareRenderer::SetClipRect(const gfx::Rect& rect) { - void SoftwareRenderer::ClearCanvas(SkColor color) { - if (!current_canvas_) - return; -- current_canvas_->clear(color); -+ -+ if (is_scissor_enabled_) { -+ // The same paint used by SkCanvas::clear, but applied to the scissor rect. -+ SkPaint clear_paint; -+ clear_paint.setColor(color); -+ clear_paint.setBlendMode(SkBlendMode::kSrc); -+ current_canvas_->drawRect(gfx::RectToSkRect(scissor_rect_), clear_paint); -+ } else { -+ current_canvas_->clear(color); -+ } - } - - void SoftwareRenderer::ClearFramebuffer() { diff --git a/patch/patches/storage_partition_1973.patch b/patch/patches/storage_partition_1973.patch index d58043850..149a765b7 100644 --- a/patch/patches/storage_partition_1973.patch +++ b/patch/patches/storage_partition_1973.patch @@ -14,10 +14,10 @@ index e9ad038..2a10c80 100644 } diff --git content/browser/blob_storage/chrome_blob_storage_context.cc content/browser/blob_storage/chrome_blob_storage_context.cc -index 92a2e89..e4cacfe 100644 +index d814ea2..fa00560 100644 --- content/browser/blob_storage/chrome_blob_storage_context.cc +++ content/browser/blob_storage/chrome_blob_storage_context.cc -@@ -76,6 +76,11 @@ class BlobHandleImpl : public BlobHandle { +@@ -78,6 +78,11 @@ class BlobHandleImpl : public BlobHandle { ChromeBlobStorageContext::ChromeBlobStorageContext() {} @@ -28,24 +28,25 @@ index 92a2e89..e4cacfe 100644 + ChromeBlobStorageContext* ChromeBlobStorageContext::GetFor( BrowserContext* context) { - if (!context->GetUserData(kBlobStorageContextKeyName)) { + DCHECK_CURRENTLY_ON(BrowserThread::UI); diff --git content/browser/blob_storage/chrome_blob_storage_context.h content/browser/blob_storage/chrome_blob_storage_context.h -index ad4a2a2..7c4212c 100644 +index 00b6123..aa915f3 100644 --- content/browser/blob_storage/chrome_blob_storage_context.h +++ content/browser/blob_storage/chrome_blob_storage_context.h -@@ -45,6 +45,7 @@ class CONTENT_EXPORT ChromeBlobStorageContext +@@ -47,6 +47,8 @@ class CONTENT_EXPORT ChromeBlobStorageContext public: ChromeBlobStorageContext(); + static const void* GetUserDataKey(); ++ + // Must be called on the UI thread. static ChromeBlobStorageContext* GetFor( BrowserContext* browser_context); - diff --git content/browser/bluetooth/web_bluetooth_service_impl.cc content/browser/bluetooth/web_bluetooth_service_impl.cc -index 36d4ea7..f696c5b 100644 +index 4edb4da..8b8a8fc 100644 --- content/browser/bluetooth/web_bluetooth_service_impl.cc +++ content/browser/bluetooth/web_bluetooth_service_impl.cc -@@ -1194,9 +1194,9 @@ url::Origin WebBluetoothServiceImpl::GetOrigin() { +@@ -1232,9 +1232,9 @@ url::Origin WebBluetoothServiceImpl::GetOrigin() { } BluetoothAllowedDevices& WebBluetoothServiceImpl::allowed_devices() { @@ -58,7 +59,7 @@ index 36d4ea7..f696c5b 100644 partition->GetBluetoothAllowedDevicesMap(); return allowed_devices_map->GetOrCreateAllowedDevices(GetOrigin()); diff --git content/browser/browser_context.cc content/browser/browser_context.cc -index 0f23bbe..b21982f 100644 +index 1dddb59..90c05c1 100644 --- content/browser/browser_context.cc +++ content/browser/browser_context.cc @@ -125,7 +125,14 @@ StoragePartition* GetStoragePartitionFromConfig( @@ -77,7 +78,7 @@ index 0f23bbe..b21982f 100644 } void SaveSessionStateOnIOThread( -@@ -543,6 +550,11 @@ ServiceManagerConnection* BrowserContext::GetServiceManagerConnectionFor( +@@ -539,6 +546,11 @@ ServiceManagerConnection* BrowserContext::GetServiceManagerConnectionFor( BrowserContext::BrowserContext() : media_device_id_salt_(CreateRandomMediaDeviceIDSalt()) {} @@ -90,10 +91,10 @@ index 0f23bbe..b21982f 100644 CHECK(GetUserData(kMojoWasInitialized)) << "Attempting to destroy a BrowserContext that never called " diff --git content/browser/devtools/protocol/service_worker_handler.cc content/browser/devtools/protocol/service_worker_handler.cc -index 242d33e..4dfb463 100644 +index 9ad73e7..757af27 100644 --- content/browser/devtools/protocol/service_worker_handler.cc +++ content/browser/devtools/protocol/service_worker_handler.cc -@@ -321,10 +321,9 @@ Response ServiceWorkerHandler::DispatchSyncEvent( +@@ -320,10 +320,9 @@ Response ServiceWorkerHandler::DispatchSyncEvent( if (!base::StringToInt64(registration_id, &id)) return CreateInvalidVersionIdErrorResponse(); @@ -107,25 +108,25 @@ index 242d33e..4dfb463 100644 BrowserThread::PostTask(BrowserThread::IO, FROM_HERE, diff --git content/browser/loader/navigation_url_loader_network_service.cc content/browser/loader/navigation_url_loader_network_service.cc -index f32156a..c2373f8 100644 +index e925cdc..480663d 100644 --- content/browser/loader/navigation_url_loader_network_service.cc +++ content/browser/loader/navigation_url_loader_network_service.cc -@@ -196,8 +196,8 @@ NavigationURLLoaderNetworkService::NavigationURLLoaderNetworkService( - : nullptr, - appcache_handle ? appcache_handle->core() : nullptr, - request_info_.get(), base::Passed(std::move(factory_ptr_info)), -- static_cast(storage_partition) -- ->url_loader_factory_getter(), -+ scoped_refptr( -+ storage_partition->url_loader_factory_getter()), - base::Bind(&GetWebContentsFromFrameTreeNodeID, - request_info_->frame_tree_node_id), - base::Passed(std::move(loader_associated_request)), +@@ -371,8 +371,8 @@ NavigationURLLoaderNetworkService::NavigationURLLoaderNetworkService( + DCHECK(!request_controller_); + request_controller_ = base::MakeUnique( + std::move(new_request), resource_context, +- static_cast(storage_partition) +- ->url_loader_factory_getter(), ++ scoped_refptr( ++ storage_partition->url_loader_factory_getter()), + weak_factory_.GetWeakPtr()); + BrowserThread::PostTask( + BrowserThread::IO, FROM_HERE, diff --git content/browser/payments/payment_app_provider_impl.cc content/browser/payments/payment_app_provider_impl.cc -index 73f3cba..55d488b 100644 +index 6d0cdd6..57023e5 100644 --- content/browser/payments/payment_app_provider_impl.cc +++ content/browser/payments/payment_app_provider_impl.cc -@@ -153,8 +153,8 @@ void PaymentAppProviderImpl::GetAllPaymentApps( +@@ -157,8 +157,8 @@ void PaymentAppProviderImpl::GetAllPaymentApps( GetAllPaymentAppsCallback callback) { DCHECK_CURRENTLY_ON(BrowserThread::UI); @@ -136,7 +137,7 @@ index 73f3cba..55d488b 100644 scoped_refptr payment_app_context = partition->GetPaymentAppContext(); -@@ -171,10 +171,11 @@ void PaymentAppProviderImpl::InvokePaymentApp( +@@ -175,10 +175,11 @@ void PaymentAppProviderImpl::InvokePaymentApp( const InvokePaymentAppCallback& callback) { DCHECK_CURRENTLY_ON(BrowserThread::UI); @@ -152,28 +153,67 @@ index 73f3cba..55d488b 100644 BrowserThread::PostTask( BrowserThread::IO, FROM_HERE, diff --git content/browser/renderer_host/render_process_host_impl.cc content/browser/renderer_host/render_process_host_impl.cc -index ec0d400..49261d1 100644 +index d742f69..5200a9c 100644 --- content/browser/renderer_host/render_process_host_impl.cc +++ content/browser/renderer_host/render_process_host_impl.cc -@@ -482,7 +482,7 @@ class DefaultSubframeProcessHostHolder : public base::SupportsUserData::Data, - // own non-shared process. - if (partition != default_partition || is_for_guests_only) { - RenderProcessHostImpl* host = new RenderProcessHostImpl( -- browser_context_, static_cast(partition), -+ browser_context_, partition, - is_for_guests_only); - host->SetIsNeverSuitableForReuse(); - return host; -@@ -494,7 +494,7 @@ class DefaultSubframeProcessHostHolder : public base::SupportsUserData::Data, - return host_; +@@ -489,9 +489,8 @@ class SpareRenderProcessHostManager : public RenderProcessHostObserver { + SpareRenderProcessHostManager() {} - host_ = new RenderProcessHostImpl( -- browser_context_, static_cast(partition), -+ browser_context_, partition, - false /* for guests only */); - host_->SetIsNeverSuitableForReuse(); - host_->AddObserver(this); -@@ -907,7 +907,7 @@ void RenderProcessHost::SetMaxRendererProcessCount(size_t count) { + void WarmupSpareRenderProcessHost(BrowserContext* browser_context) { +- StoragePartitionImpl* current_partition = +- static_cast( +- BrowserContext::GetStoragePartition(browser_context, nullptr)); ++ StoragePartition* current_partition = ++ BrowserContext::GetStoragePartition(browser_context, nullptr); + + if (spare_render_process_host_ && + matching_browser_context_ == browser_context && +@@ -630,11 +629,10 @@ class DefaultSubframeProcessHostHolder : public base::SupportsUserData::Data, + // Gets the correct render process to use for this SiteInstance. + RenderProcessHost* GetProcessHost(SiteInstance* site_instance, + bool is_for_guests_only) { +- StoragePartitionImpl* default_partition = +- static_cast( +- BrowserContext::GetDefaultStoragePartition(browser_context_)); +- StoragePartitionImpl* partition = static_cast( +- BrowserContext::GetStoragePartition(browser_context_, site_instance)); ++ StoragePartition* default_partition = ++ BrowserContext::GetDefaultStoragePartition(browser_context_); ++ StoragePartition* partition = ++ BrowserContext::GetStoragePartition(browser_context_, site_instance); + + // Is this the default storage partition? If it isn't, then just give it its + // own non-shared process. +@@ -1187,7 +1185,7 @@ void RenderProcessHost::SetMaxRendererProcessCount(size_t count) { + // static + RenderProcessHost* RenderProcessHostImpl::CreateRenderProcessHost( + BrowserContext* browser_context, +- StoragePartitionImpl* storage_partition_impl, ++ StoragePartition* storage_partition_impl, + SiteInstance* site_instance, + bool is_for_guests_only) { + if (g_render_process_host_factory_) { +@@ -1196,8 +1194,8 @@ RenderProcessHost* RenderProcessHostImpl::CreateRenderProcessHost( + } + + if (!storage_partition_impl) { +- storage_partition_impl = static_cast( +- BrowserContext::GetStoragePartition(browser_context, site_instance)); ++ storage_partition_impl = ++ BrowserContext::GetStoragePartition(browser_context, site_instance); + } + + return new RenderProcessHostImpl(browser_context, storage_partition_impl, +@@ -1207,7 +1205,7 @@ RenderProcessHost* RenderProcessHostImpl::CreateRenderProcessHost( + // static + RenderProcessHost* RenderProcessHostImpl::CreateOrUseSpareRenderProcessHost( + BrowserContext* browser_context, +- StoragePartitionImpl* storage_partition_impl, ++ StoragePartition* storage_partition_impl, + SiteInstance* site_instance, + bool is_for_guests_only) { + RenderProcessHost* render_process_host = +@@ -1227,7 +1225,7 @@ RenderProcessHost* RenderProcessHostImpl::CreateOrUseSpareRenderProcessHost( RenderProcessHostImpl::RenderProcessHostImpl( BrowserContext* browser_context, @@ -182,7 +222,7 @@ index ec0d400..49261d1 100644 bool is_for_guests_only) : fast_shutdown_started_(false), deleting_soon_(false), -@@ -939,7 +939,8 @@ RenderProcessHostImpl::RenderProcessHostImpl( +@@ -1260,7 +1258,8 @@ RenderProcessHostImpl::RenderProcessHostImpl( indexed_db_factory_(new IndexedDBDispatcherHost( id_, storage_partition_impl_->GetURLRequestContext(), @@ -192,7 +232,7 @@ index ec0d400..49261d1 100644 ChromeBlobStorageContext::GetFor(browser_context_))), channel_connected_(false), sent_render_process_ready_(false), -@@ -970,7 +971,8 @@ RenderProcessHostImpl::RenderProcessHostImpl( +@@ -1294,7 +1293,8 @@ RenderProcessHostImpl::RenderProcessHostImpl( } push_messaging_manager_.reset(new PushMessagingManager( @@ -202,7 +242,7 @@ index ec0d400..49261d1 100644 AddObserver(indexed_db_factory_.get()); #if defined(OS_MACOSX) -@@ -1176,7 +1178,7 @@ bool RenderProcessHostImpl::Init() { +@@ -1500,7 +1500,7 @@ bool RenderProcessHostImpl::Init() { } void RenderProcessHostImpl::EnableSendQueue() { @@ -211,7 +251,7 @@ index ec0d400..49261d1 100644 InitializeChannelProxy(); } -@@ -1273,6 +1275,22 @@ void RenderProcessHostImpl::ResetChannelProxy() { +@@ -1597,6 +1597,22 @@ void RenderProcessHostImpl::ResetChannelProxy() { void RenderProcessHostImpl::CreateMessageFilters() { DCHECK_CURRENTLY_ON(BrowserThread::UI); @@ -234,7 +274,7 @@ index ec0d400..49261d1 100644 AddFilter(new ResourceSchedulerFilter(GetID())); MediaInternals* media_internals = MediaInternals::GetInstance(); // Add BrowserPluginMessageFilter to ensure it gets the first stab at messages -@@ -1287,8 +1305,8 @@ void RenderProcessHostImpl::CreateMessageFilters() { +@@ -1611,8 +1627,8 @@ void RenderProcessHostImpl::CreateMessageFilters() { new RenderMessageFilter( GetID(), GetBrowserContext(), request_context.get(), widget_helper_.get(), media_internals, @@ -245,7 +285,7 @@ index ec0d400..49261d1 100644 AddFilter(render_message_filter.get()); render_frame_message_filter_ = new RenderFrameMessageFilter( -@@ -1317,10 +1335,10 @@ void RenderProcessHostImpl::CreateMessageFilters() { +@@ -1641,10 +1657,10 @@ void RenderProcessHostImpl::CreateMessageFilters() { ChromeBlobStorageContext::GetFor(browser_context); resource_message_filter_ = new ResourceMessageFilter( @@ -258,7 +298,7 @@ index ec0d400..49261d1 100644 BrowserThread::GetTaskRunnerForThread(BrowserThread::IO)); AddFilter(resource_message_filter_.get()); -@@ -1344,10 +1362,10 @@ void RenderProcessHostImpl::CreateMessageFilters() { +@@ -1671,10 +1687,10 @@ void RenderProcessHostImpl::CreateMessageFilters() { AddFilter( new MidiHost(GetID(), BrowserMainLoop::GetInstance()->midi_service())); AddFilter(new AppCacheDispatcherHost( @@ -271,7 +311,7 @@ index ec0d400..49261d1 100644 #if BUILDFLAG(ENABLE_WEBRTC) peer_connection_tracker_host_ = new PeerConnectionTrackerHost( -@@ -1386,13 +1404,12 @@ void RenderProcessHostImpl::CreateMessageFilters() { +@@ -1713,13 +1729,12 @@ void RenderProcessHostImpl::CreateMessageFilters() { scoped_refptr cache_storage_filter = new CacheStorageDispatcherHost(); @@ -287,7 +327,7 @@ index ec0d400..49261d1 100644 AddFilter(service_worker_filter.get()); AddFilter(new SharedWorkerMessageFilter( -@@ -1400,12 +1417,12 @@ void RenderProcessHostImpl::CreateMessageFilters() { +@@ -1727,12 +1742,12 @@ void RenderProcessHostImpl::CreateMessageFilters() { WorkerStoragePartition( storage_partition_impl_->GetURLRequestContext(), storage_partition_impl_->GetMediaURLRequestContext(), @@ -303,7 +343,7 @@ index ec0d400..49261d1 100644 base::Bind(&RenderWidgetHelper::GetNextRoutingID, base::Unretained(widget_helper_.get())))); -@@ -1421,11 +1438,8 @@ void RenderProcessHostImpl::CreateMessageFilters() { +@@ -1748,11 +1763,8 @@ void RenderProcessHostImpl::CreateMessageFilters() { GetID(), storage_partition_impl_->GetQuotaManager(), GetContentClient()->browser()->CreateQuotaPermissionContext())); @@ -316,7 +356,7 @@ index ec0d400..49261d1 100644 resource_context, service_worker_context, browser_context); AddFilter(notification_message_filter_.get()); -@@ -1441,6 +1455,11 @@ void RenderProcessHostImpl::CreateMessageFilters() { +@@ -1768,6 +1780,11 @@ void RenderProcessHostImpl::CreateMessageFilters() { void RenderProcessHostImpl::RegisterMojoInterfaces() { auto registry = base::MakeUnique(); @@ -328,7 +368,7 @@ index ec0d400..49261d1 100644 channel_->AddAssociatedInterfaceForIOThread( base::Bind(&IndexedDBDispatcherHost::AddBinding, base::Unretained(indexed_db_factory_.get()))); -@@ -1488,8 +1507,7 @@ void RenderProcessHostImpl::RegisterMojoInterfaces() { +@@ -1818,8 +1835,7 @@ void RenderProcessHostImpl::RegisterMojoInterfaces() { AddUIThreadInterface( registry.get(), base::Bind(&PlatformNotificationContextImpl::CreateService, @@ -338,7 +378,7 @@ index ec0d400..49261d1 100644 GetID())); AddUIThreadInterface( registry.get(), -@@ -1725,6 +1743,7 @@ void RenderProcessHostImpl::ForceReleaseWorkerRefCounts() { +@@ -2085,6 +2101,7 @@ void RenderProcessHostImpl::ForceReleaseWorkerRefCounts() { DCHECK_CURRENTLY_ON(BrowserThread::UI); DCHECK(!is_worker_ref_count_disabled_); is_worker_ref_count_disabled_ = true; @@ -346,39 +386,46 @@ index ec0d400..49261d1 100644 if (!GetWorkerRefCount()) return; service_worker_ref_count_ = 0; -@@ -3064,8 +3083,8 @@ RenderProcessHost* RenderProcessHostImpl::GetProcessHostForSiteInstance( - g_render_process_host_factory_->CreateRenderProcessHost( - browser_context, site_instance); - } else { -- StoragePartitionImpl* partition = static_cast( -- BrowserContext::GetStoragePartition(browser_context, site_instance)); -+ StoragePartition* partition = -+ BrowserContext::GetStoragePartition(browser_context, site_instance); - render_process_host = new RenderProcessHostImpl( - browser_context, partition, is_for_guests_only); - } diff --git content/browser/renderer_host/render_process_host_impl.h content/browser/renderer_host/render_process_host_impl.h -index 8d5033e..45b8a7c 100644 +index ede5f06..5e205fb 100644 --- content/browser/renderer_host/render_process_host_impl.h +++ content/browser/renderer_host/render_process_host_impl.h -@@ -80,7 +80,6 @@ class RenderWidgetHostImpl; - class ResourceMessageFilter; +@@ -84,7 +84,6 @@ class ResourceMessageFilter; + class SiteInstance; class SiteInstanceImpl; class StoragePartition; -class StoragePartitionImpl; typedef base::Thread* (*RendererMainThreadFactoryFunction)( const InProcessChildThreadParams& params); -@@ -112,7 +111,7 @@ class CONTENT_EXPORT RenderProcessHostImpl - public NON_EXPORTED_BASE(mojom::AssociatedInterfaceProvider) { - public: +@@ -123,7 +122,7 @@ class CONTENT_EXPORT RenderProcessHostImpl + // legal). + static RenderProcessHost* CreateOrUseSpareRenderProcessHost( + BrowserContext* browser_context, +- StoragePartitionImpl* storage_partition_impl, ++ StoragePartition* storage_partition_impl, + SiteInstance* site_instance, + bool is_for_guests_only); + +@@ -135,7 +134,7 @@ class CONTENT_EXPORT RenderProcessHostImpl + // null. + static RenderProcessHost* CreateRenderProcessHost( + BrowserContext* browser_context, +- StoragePartitionImpl* storage_partition_impl, ++ StoragePartition* storage_partition_impl, + SiteInstance* site_instance, + bool is_for_guests_only); + +@@ -402,7 +401,7 @@ class CONTENT_EXPORT RenderProcessHostImpl + // Use CreateRenderProcessHost() instead of calling this constructor + // directly. RenderProcessHostImpl(BrowserContext* browser_context, - StoragePartitionImpl* storage_partition_impl, + StoragePartition* storage_partition_impl, bool is_for_guests_only); - ~RenderProcessHostImpl() override; -@@ -581,10 +580,10 @@ class CONTENT_EXPORT RenderProcessHostImpl + // Initializes a new IPC::ChannelProxy in |channel_|, which will be connected +@@ -631,10 +630,10 @@ class CONTENT_EXPORT RenderProcessHostImpl // called. int instance_id_ = 1; @@ -392,10 +439,10 @@ index 8d5033e..45b8a7c 100644 // The observers watching our lifetime. base::ObserverList observers_; diff --git content/browser/storage_partition_impl.h content/browser/storage_partition_impl.h -index 58a6de1..4835648 100644 +index a0df88a..d996a81 100644 --- content/browser/storage_partition_impl.h +++ content/browser/storage_partition_impl.h -@@ -110,12 +110,11 @@ class CONTENT_EXPORT StoragePartitionImpl +@@ -113,14 +113,13 @@ class CONTENT_EXPORT StoragePartitionImpl const base::Closure& callback) override; void Flush() override; void ClearBluetoothAllowedDevicesMapForTesting() override; @@ -405,15 +452,19 @@ index 58a6de1..4835648 100644 - PaymentAppContextImpl* GetPaymentAppContext(); - BroadcastChannelProvider* GetBroadcastChannelProvider(); - BluetoothAllowedDevicesMap* GetBluetoothAllowedDevicesMap(); +- BlobURLLoaderFactory* GetBlobURLLoaderFactory(); +- BlobRegistryWrapper* GetBlobRegistry(); + BackgroundFetchContext* GetBackgroundFetchContext() override; + BackgroundSyncContext* GetBackgroundSyncContext() override; + PaymentAppContextImpl* GetPaymentAppContext() override; + BroadcastChannelProvider* GetBroadcastChannelProvider() override; + BluetoothAllowedDevicesMap* GetBluetoothAllowedDevicesMap() override; ++ BlobURLLoaderFactory* GetBlobURLLoaderFactory() override; ++ BlobRegistryWrapper* GetBlobRegistry() override; // mojom::StoragePartitionService interface. void OpenLocalStorage( -@@ -124,17 +123,20 @@ class CONTENT_EXPORT StoragePartitionImpl +@@ -129,17 +128,20 @@ class CONTENT_EXPORT StoragePartitionImpl // Returns the NetworkContext associated with this storage partition. Only // used when the network service is enabled. @@ -468,10 +519,10 @@ index 075ae3e..57fb5fd 100644 void InitializeOnIOThread(); diff --git content/browser/webui/web_ui_url_loader_factory.cc content/browser/webui/web_ui_url_loader_factory.cc -index e85627c..3f55353 100644 +index 99bc1b3..d96d2db 100644 --- content/browser/webui/web_ui_url_loader_factory.cc +++ content/browser/webui/web_ui_url_loader_factory.cc -@@ -18,7 +18,6 @@ +@@ -18,13 +18,13 @@ #include "content/browser/frame_host/render_frame_host_impl.h" #include "content/browser/histogram_internals_url_loader.h" #include "content/browser/resource_context_impl.h" @@ -479,14 +530,13 @@ index e85627c..3f55353 100644 #include "content/browser/webui/network_error_url_loader.h" #include "content/browser/webui/url_data_manager_backend.h" #include "content/browser/webui/url_data_source_impl.h" -@@ -26,6 +25,7 @@ #include "content/public/browser/browser_context.h" #include "content/public/browser/browser_thread.h" #include "content/public/browser/render_process_host.h" +#include "content/public/browser/storage_partition.h" #include "content/public/browser/web_contents.h" + #include "content/public/common/network_service.mojom.h" #include "content/public/common/url_constants.h" - #include "mojo/public/cpp/bindings/binding_set.h" @@ -210,8 +210,8 @@ class WebUIURLLoaderFactory : public mojom::URLLoaderFactory, public: WebUIURLLoaderFactory(FrameTreeNode* ftn) @@ -498,7 +548,7 @@ index e85627c..3f55353 100644 ftn->AddObserver(this); } -@@ -278,7 +278,7 @@ class WebUIURLLoaderFactory : public mojom::URLLoaderFactory, +@@ -282,7 +282,7 @@ class WebUIURLLoaderFactory : public mojom::URLLoaderFactory, private: int frame_tree_node_id_; @@ -508,10 +558,10 @@ index e85627c..3f55353 100644 DISALLOW_COPY_AND_ASSIGN(WebUIURLLoaderFactory); diff --git content/public/browser/browser_context.h content/public/browser/browser_context.h -index 7a895f2..687da7c 100644 +index 8503ee8..8f87408 100644 --- content/public/browser/browser_context.h +++ content/public/browser/browser_context.h -@@ -185,6 +185,8 @@ class CONTENT_EXPORT BrowserContext : public base::SupportsUserData { +@@ -188,6 +188,8 @@ class CONTENT_EXPORT BrowserContext : public base::SupportsUserData { BrowserContext(); @@ -520,7 +570,7 @@ index 7a895f2..687da7c 100644 ~BrowserContext() override; // Shuts down the storage partitions associated to this browser context. -@@ -266,6 +268,14 @@ class CONTENT_EXPORT BrowserContext : public base::SupportsUserData { +@@ -269,6 +271,14 @@ class CONTENT_EXPORT BrowserContext : public base::SupportsUserData { const base::FilePath& partition_path, bool in_memory) = 0; @@ -532,11 +582,11 @@ index 7a895f2..687da7c 100644 + return nullptr; + } + - using StaticServiceMap = std::map; + using StaticServiceMap = + std::map; - // Registers per-browser-context services to be loaded in the browser process diff --git content/public/browser/storage_partition.h content/public/browser/storage_partition.h -index 60e5c7d..14f50b3 100644 +index 60e5c7d..e90a494 100644 --- content/public/browser/storage_partition.h +++ content/public/browser/storage_partition.h @@ -13,6 +13,7 @@ @@ -547,12 +597,14 @@ index 60e5c7d..14f50b3 100644 #include "net/cookies/cookie_store.h" class GURL; -@@ -41,12 +42,18 @@ class DatabaseTracker; +@@ -41,12 +42,20 @@ class DatabaseTracker; namespace content { class AppCacheService; +class BackgroundFetchContext; +class BackgroundSyncContext; ++class BlobRegistryWrapper; ++class BlobURLLoaderFactory; +class BluetoothAllowedDevicesMap; +class BroadcastChannelProvider; class BrowserContext; @@ -566,7 +618,7 @@ index 60e5c7d..14f50b3 100644 #if !defined(OS_ANDROID) class HostZoomLevelContext; -@@ -54,6 +61,11 @@ class HostZoomMap; +@@ -54,6 +63,11 @@ class HostZoomMap; class ZoomLevelDelegate; #endif // !defined(OS_ANDROID) @@ -578,7 +630,7 @@ index 60e5c7d..14f50b3 100644 // Defines what persistent state a child process can access. // // The StoragePartition defines the view each child process has of the -@@ -79,6 +91,11 @@ class CONTENT_EXPORT StoragePartition { +@@ -79,6 +93,13 @@ class CONTENT_EXPORT StoragePartition { virtual ZoomLevelDelegate* GetZoomLevelDelegate() = 0; #endif // !defined(OS_ANDROID) virtual PlatformNotificationContext* GetPlatformNotificationContext() = 0; @@ -587,10 +639,12 @@ index 60e5c7d..14f50b3 100644 + virtual PaymentAppContextImpl* GetPaymentAppContext() = 0; + virtual BroadcastChannelProvider* GetBroadcastChannelProvider() = 0; + virtual BluetoothAllowedDevicesMap* GetBluetoothAllowedDevicesMap() = 0; ++ virtual BlobURLLoaderFactory* GetBlobURLLoaderFactory() = 0; ++ virtual BlobRegistryWrapper* GetBlobRegistry() = 0; enum : uint32_t { REMOVE_DATA_MASK_APPCACHE = 1 << 0, -@@ -184,6 +201,14 @@ class CONTENT_EXPORT StoragePartition { +@@ -184,6 +205,14 @@ class CONTENT_EXPORT StoragePartition { // Clear the bluetooth allowed devices map. For test use only. virtual void ClearBluetoothAllowedDevicesMapForTesting() = 0; diff --git a/patch/patches/ui_dragdrop_355390.patch b/patch/patches/ui_dragdrop_355390.patch index 592c60902..06d5b919d 100644 --- a/patch/patches/ui_dragdrop_355390.patch +++ b/patch/patches/ui_dragdrop_355390.patch @@ -1,9 +1,9 @@ diff --git ui/base/dragdrop/os_exchange_data_provider_aurax11.cc ui/base/dragdrop/os_exchange_data_provider_aurax11.cc -index 2e4b975..d0cb122 100644 +index 1a6e9a1..08eb800 100644 --- ui/base/dragdrop/os_exchange_data_provider_aurax11.cc +++ ui/base/dragdrop/os_exchange_data_provider_aurax11.cc -@@ -162,7 +162,8 @@ void OSExchangeDataProviderAuraX11::SetURL(const GURL& url, - mem); +@@ -141,7 +141,8 @@ void OSExchangeDataProviderAuraX11::SetURL(const GURL& url, + format_map_.Insert(gfx::GetAtom(Clipboard::kMimeTypeMozillaURL), mem); // Set a string fallback as well. - SetString(spec); diff --git a/patch/patches/views_1749_2102.patch b/patch/patches/views_1749_2102.patch index cb4b1023d..e614f6e9a 100644 --- a/patch/patches/views_1749_2102.patch +++ b/patch/patches/views_1749_2102.patch @@ -39,10 +39,10 @@ index 0755f27..0322b8c 100644 virtual void MenuWillShow() {} diff --git ui/gfx/render_text.cc ui/gfx/render_text.cc -index 97b6c8f..84b9387 100644 +index 041c9f2..4b8beb4 100644 --- ui/gfx/render_text.cc +++ ui/gfx/render_text.cc -@@ -567,6 +567,14 @@ void RenderText::SetElideBehavior(ElideBehavior elide_behavior) { +@@ -486,6 +486,14 @@ void RenderText::SetElideBehavior(ElideBehavior elide_behavior) { } } @@ -57,7 +57,7 @@ index 97b6c8f..84b9387 100644 void RenderText::SetDisplayRect(const Rect& r) { if (r != display_rect_) { display_rect_ = r; -@@ -1466,6 +1474,19 @@ void RenderText::OnTextAttributeChanged() { +@@ -1386,6 +1394,19 @@ void RenderText::OnTextAttributeChanged() { if (!multiline_ && replace_newline_chars_with_symbols_) base::ReplaceChars(layout_text_, kNewline, kNewlineSymbol, &layout_text_); @@ -78,10 +78,10 @@ index 97b6c8f..84b9387 100644 } diff --git ui/gfx/render_text.h ui/gfx/render_text.h -index 00fe00c..bc4fd59 100644 +index 24ea3d4..4554f12 100644 --- ui/gfx/render_text.h +++ ui/gfx/render_text.h -@@ -312,6 +312,10 @@ class GFX_EXPORT RenderText { +@@ -275,6 +275,10 @@ class GFX_EXPORT RenderText { void SetElideBehavior(ElideBehavior elide_behavior); ElideBehavior elide_behavior() const { return elide_behavior_; } @@ -92,9 +92,9 @@ index 00fe00c..bc4fd59 100644 const Rect& display_rect() const { return display_rect_; } void SetDisplayRect(const Rect& r); -@@ -858,6 +862,8 @@ class GFX_EXPORT RenderText { - // OnLayoutTextAttributeChanged and OnDisplayTextAttributeChanged calls. - std::vector lines_; +@@ -827,6 +831,8 @@ class GFX_EXPORT RenderText { + // The ratio of strike-through line thickness to text height. + SkScalar strike_thickness_factor_; + int draw_strings_flags_ = 0; + @@ -102,10 +102,10 @@ index 00fe00c..bc4fd59 100644 }; diff --git ui/views/animation/ink_drop_host_view.h ui/views/animation/ink_drop_host_view.h -index 68e5b60..3861921 100644 +index 8ac475f..d052dec 100644 --- ui/views/animation/ink_drop_host_view.h +++ ui/views/animation/ink_drop_host_view.h -@@ -130,6 +130,8 @@ class VIEWS_EXPORT InkDropHostView : public View, public InkDropHost { +@@ -136,6 +136,8 @@ class VIEWS_EXPORT InkDropHostView : public View, public InkDropHost { // of CreateInkDrop() delegates to this function. std::unique_ptr CreateDefaultInkDropImpl(); @@ -115,10 +115,10 @@ index 68e5b60..3861921 100644 class InkDropGestureHandler; friend class InkDropGestureHandler; diff --git ui/views/controls/button/label_button.cc ui/views/controls/button/label_button.cc -index aa8dae7..05c89b3 100644 +index 1d9e7b8..683d680 100644 --- ui/views/controls/button/label_button.cc +++ ui/views/controls/button/label_button.cc -@@ -192,6 +192,7 @@ gfx::Size LabelButton::GetPreferredSize() const { +@@ -188,6 +188,7 @@ gfx::Size LabelButton::CalculatePreferredSize() const { Label label(GetText(), {label_->font_list()}); label.SetLineHeight(label_->line_height()); label.SetShadows(label_->shadows()); @@ -126,7 +126,7 @@ index aa8dae7..05c89b3 100644 if (style_ == STYLE_BUTTON && PlatformStyle::kDefaultLabelButtonHasBoldFont) { // Some text appears wider when rendered normally than when rendered bold. -@@ -404,6 +405,11 @@ std::unique_ptr LabelButton::CreateInkDropHighlight() +@@ -399,6 +400,11 @@ std::unique_ptr LabelButton::CreateInkDropHighlight() gfx::RectF(image()->GetMirroredBounds()).CenterPoint()); } @@ -139,10 +139,10 @@ index aa8dae7..05c89b3 100644 const gfx::Size previous_image_size(image_->GetPreferredSize()); UpdateImage(); diff --git ui/views/controls/button/label_button.h ui/views/controls/button/label_button.h -index 8495c43..da7997e 100644 +index 0fb0337..38397cd 100644 --- ui/views/controls/button/label_button.h +++ ui/views/controls/button/label_button.h -@@ -109,6 +109,9 @@ class VIEWS_EXPORT LabelButton : public CustomButton, +@@ -106,6 +106,9 @@ class VIEWS_EXPORT LabelButton : public CustomButton, std::unique_ptr CreateInkDropRipple() const override; std::unique_ptr CreateInkDropHighlight() const override; @@ -151,21 +151,21 @@ index 8495c43..da7997e 100644 + protected: ImageView* image() const { return image_; } - Label* label() const { return label_; } + Label* label() const; diff --git ui/views/controls/button/menu_button.cc ui/views/controls/button/menu_button.cc -index 33740d8..42c4cbc 100644 +index 0e4194e..736e2c3 100644 --- ui/views/controls/button/menu_button.cc +++ ui/views/controls/button/menu_button.cc -@@ -194,7 +194,7 @@ void MenuButton::OnPaint(gfx::Canvas* canvas) { - gfx::Size MenuButton::GetPreferredSize() const { - gfx::Size prefsize = LabelButton::GetPreferredSize(); +@@ -186,7 +186,7 @@ bool MenuButton::IsTriggerableEventType(const ui::Event& event) { + gfx::Size MenuButton::CalculatePreferredSize() const { + gfx::Size prefsize = LabelButton::CalculatePreferredSize(); if (show_menu_marker_) { - prefsize.Enlarge(menu_marker_->width() + kMenuMarkerPaddingLeft + + prefsize.Enlarge(menu_marker_->width() + GetMarkerPaddingLeft() + kMenuMarkerPaddingRight, 0); } -@@ -324,7 +324,7 @@ gfx::Rect MenuButton::GetChildAreaBounds() { +@@ -316,7 +316,7 @@ gfx::Rect MenuButton::GetChildAreaBounds() { gfx::Size s = size(); if (show_menu_marker_) { @@ -174,7 +174,7 @@ index 33740d8..42c4cbc 100644 kMenuMarkerPaddingRight); } -@@ -416,4 +416,10 @@ int MenuButton::GetMaximumScreenXCoordinate() { +@@ -413,4 +413,10 @@ int MenuButton::GetMaximumScreenXCoordinate() { return monitor_bounds.right() - 1; } @@ -186,7 +186,7 @@ index 33740d8..42c4cbc 100644 + } // namespace views diff --git ui/views/controls/button/menu_button.h ui/views/controls/button/menu_button.h -index 0d87c31..bcaa1ec 100644 +index 9adbee9..1b5151a 100644 --- ui/views/controls/button/menu_button.h +++ ui/views/controls/button/menu_button.h @@ -57,6 +57,9 @@ class VIEWS_EXPORT MenuButton : public LabelButton { @@ -210,7 +210,7 @@ index 0d87c31..bcaa1ec 100644 // The time is used for simulating menu behavior for the menu button; that // is, if the menu is shown and the button is pressed, we need to close the diff --git ui/views/controls/label.cc ui/views/controls/label.cc -index 2523f9a..ef64aac 100644 +index 05c9338..3d64177 100644 --- ui/views/controls/label.cc +++ ui/views/controls/label.cc @@ -26,6 +26,7 @@ @@ -242,7 +242,7 @@ index 2523f9a..ef64aac 100644 } // namespace const char Label::kViewClassName[] = "Label"; -@@ -221,6 +236,15 @@ void Label::SetElideBehavior(gfx::ElideBehavior elide_behavior) { +@@ -219,6 +234,15 @@ void Label::SetElideBehavior(gfx::ElideBehavior elide_behavior) { ResetLayout(); } @@ -258,7 +258,7 @@ index 2523f9a..ef64aac 100644 void Label::SetTooltipText(const base::string16& tooltip_text) { DCHECK(handles_tooltips_); tooltip_text_ = tooltip_text; -@@ -446,7 +470,19 @@ std::unique_ptr Label::CreateRenderText( +@@ -438,7 +462,19 @@ std::unique_ptr Label::CreateRenderText( render_text->SetFontList(font_list()); render_text->set_shadows(shadows()); render_text->SetCursorEnabled(false); @@ -280,10 +280,10 @@ index 2523f9a..ef64aac 100644 } diff --git ui/views/controls/label.h ui/views/controls/label.h -index 0fa4db8..6d48a9b 100644 +index 38eb5f3..1298fc6 100644 --- ui/views/controls/label.h +++ ui/views/controls/label.h -@@ -144,6 +144,10 @@ class VIEWS_EXPORT Label : public View, +@@ -146,6 +146,10 @@ class VIEWS_EXPORT Label : public View, void SetElideBehavior(gfx::ElideBehavior elide_behavior); gfx::ElideBehavior elide_behavior() const { return elide_behavior_; } @@ -303,10 +303,10 @@ index 0fa4db8..6d48a9b 100644 // TODO(ckocagil): Remove is_first_paint_text_ before crbug.com/441028 is // closed. diff --git ui/views/controls/menu/menu_controller.cc ui/views/controls/menu/menu_controller.cc -index 7c44dd17..2da694b 100644 +index e9125d6..e0849a7 100644 --- ui/views/controls/menu/menu_controller.cc +++ ui/views/controls/menu/menu_controller.cc -@@ -2259,8 +2259,13 @@ MenuItemView* MenuController::FindNextSelectableMenuItem( +@@ -2267,8 +2267,13 @@ MenuItemView* MenuController::FindNextSelectableMenuItem( void MenuController::OpenSubmenuChangeSelectionIfCan() { MenuItemView* item = pending_state_.item; @@ -321,7 +321,7 @@ index 7c44dd17..2da694b 100644 MenuItemView* to_select = NULL; if (item->GetSubmenu()->GetMenuItemCount() > 0) to_select = FindInitialSelectableMenuItem(item, INCREMENT_SELECTION_DOWN); -@@ -2275,8 +2280,10 @@ void MenuController::OpenSubmenuChangeSelectionIfCan() { +@@ -2283,8 +2288,10 @@ void MenuController::OpenSubmenuChangeSelectionIfCan() { void MenuController::CloseSubmenu() { MenuItemView* item = state_.item; DCHECK(item); @@ -330,7 +330,7 @@ index 7c44dd17..2da694b 100644 + item->GetDelegate()->OnUnhandledCloseSubmenu(item, base::i18n::IsRTL()); return; + } - if (item->HasSubmenu() && item->GetSubmenu()->IsShowing()) + if (item->SubmenuIsShowing()) SetSelection(item, SELECTION_UPDATE_IMMEDIATELY); else if (item->GetParentMenuItem()->GetParentMenuItem()) diff --git ui/views/controls/menu/menu_delegate.h ui/views/controls/menu/menu_delegate.h @@ -381,10 +381,10 @@ index 4dea63f..ef50b71 100644 virtual int GetMaxWidthForMenu(MenuItemView* menu); diff --git ui/views/controls/menu/menu_item_view.cc ui/views/controls/menu/menu_item_view.cc -index c2d98e2..8d12a05 100644 +index 905690f..333148c 100644 --- ui/views/controls/menu/menu_item_view.cc +++ ui/views/controls/menu/menu_item_view.cc -@@ -761,7 +761,12 @@ void MenuItemView::PaintButton(gfx::Canvas* canvas, PaintButtonMode mode) { +@@ -763,7 +763,12 @@ void MenuItemView::PaintButton(gfx::Canvas* canvas, PaintButtonMode mode) { // only need the background when we want it to look different, as when we're // selected. ui::NativeTheme* native_theme = GetNativeTheme(); @@ -398,7 +398,7 @@ index c2d98e2..8d12a05 100644 gfx::Rect item_bounds(0, 0, width(), height()); AdjustBoundsForRTLUI(&item_bounds); -@@ -873,6 +878,13 @@ void MenuItemView::PaintMinorText(gfx::Canvas* canvas, SkColor color) { +@@ -875,6 +880,13 @@ void MenuItemView::PaintMinorText(gfx::Canvas* canvas, SkColor color) { SkColor MenuItemView::GetTextColor(bool minor, bool render_selection, bool emphasized) const { @@ -520,7 +520,7 @@ index 0ac493c..741769e 100644 void WillHideMenu(MenuItemView* menu) override; void OnMenuClosed(MenuItemView* menu) override; diff --git ui/views/controls/menu/menu_scroll_view_container.cc ui/views/controls/menu/menu_scroll_view_container.cc -index 124442a..c5cfe8b 100644 +index 08ba198..595b375 100644 --- ui/views/controls/menu/menu_scroll_view_container.cc +++ ui/views/controls/menu/menu_scroll_view_container.cc @@ -184,6 +184,11 @@ MenuScrollViewContainer::MenuScrollViewContainer(SubmenuView* content_view) @@ -530,16 +530,16 @@ index 124442a..c5cfe8b 100644 + SkColor override_color; + MenuDelegate* delegate = content_view_->GetMenuItem()->GetDelegate(); + if (delegate && delegate->GetBackgroundColor(-1, false, &override_color)) -+ set_background(views::Background::CreateSolidBackground(override_color)); ++ SetBackground(views::CreateSolidBackground(override_color)); + arrow_ = BubbleBorderTypeFromAnchor( content_view_->GetMenuItem()->GetMenuController()->GetAnchorPosition()); diff --git ui/views/test/ui_controls_factory_desktop_aurax11.cc ui/views/test/ui_controls_factory_desktop_aurax11.cc -index 117a268..6065c73 100644 +index 534e0c4..974d82d 100644 --- ui/views/test/ui_controls_factory_desktop_aurax11.cc +++ ui/views/test/ui_controls_factory_desktop_aurax11.cc -@@ -146,10 +146,6 @@ class UIControlsDesktopX11 : public UIControlsAura { +@@ -147,10 +147,6 @@ class UIControlsDesktopX11 : public UIControlsAura { aura::test::QueryLatestMousePositionRequestInHost(host); host->ConvertPixelsToDIP(&root_current_location); @@ -551,7 +551,7 @@ index 117a268..6065c73 100644 // Move the cursor because EnterNotify/LeaveNotify are generated with the // current mouse position as a result of XGrabPointer() diff --git ui/views/view.h ui/views/view.h -index 410e2a5..0ba4765 100644 +index 7a8a7b3..e712ef7 100644 --- ui/views/view.h +++ ui/views/view.h @@ -18,6 +18,7 @@ @@ -562,12 +562,12 @@ index 410e2a5..0ba4765 100644 #include "build/build_config.h" #include "ui/accessibility/ax_enums.h" #include "ui/base/accelerators/accelerator.h" -@@ -115,7 +116,8 @@ class VIEWS_EXPORT View : public ui::LayerDelegate, - public ui::LayerOwner, +@@ -117,7 +118,8 @@ class VIEWS_EXPORT View : public ui::LayerDelegate, public ui::AcceleratorTarget, public ui::EventTarget, -- public ui::EventHandler { -+ public ui::EventHandler, + public ui::EventHandler, +- public ui::PropertyHandler { ++ public ui::PropertyHandler, + public base::SupportsUserData { public: using Views = std::vector; diff --git a/patch/patches/views_widget_180_1481_1565_1677_1749.patch b/patch/patches/views_widget_180_1481_1565_1677_1749.patch index e25b2509e..d385c66ee 100644 --- a/patch/patches/views_widget_180_1481_1565_1677_1749.patch +++ b/patch/patches/views_widget_180_1481_1565_1677_1749.patch @@ -1,8 +1,8 @@ diff --git content/browser/renderer_host/render_widget_host_view_base.cc content/browser/renderer_host/render_widget_host_view_base.cc -index 527e5ea..de52a1e 100644 +index ebf64e9..f242f5f 100644 --- content/browser/renderer_host/render_widget_host_view_base.cc +++ content/browser/renderer_host/render_widget_host_view_base.cc -@@ -299,6 +299,14 @@ void RenderWidgetHostViewBase::FocusedNodeTouched( +@@ -298,6 +298,14 @@ void RenderWidgetHostViewBase::FocusedNodeTouched( DVLOG(1) << "FocusedNodeTouched: " << editable; } @@ -18,18 +18,18 @@ index 527e5ea..de52a1e 100644 return renderer_frame_number_; } diff --git content/browser/renderer_host/render_widget_host_view_base.h content/browser/renderer_host/render_widget_host_view_base.h -index 904897a..4454205 100644 +index 9a124eb..84d1c63 100644 --- content/browser/renderer_host/render_widget_host_view_base.h +++ content/browser/renderer_host/render_widget_host_view_base.h -@@ -72,6 +72,7 @@ class BrowserAccessibilityDelegate; - class BrowserAccessibilityManager; +@@ -77,6 +77,7 @@ class BrowserAccessibilityManager; + class CursorManager; class RenderWidgetHostImpl; class RenderWidgetHostViewBaseObserver; +class RenderWidgetHostViewGuest; class SyntheticGestureTarget; class TextInputManager; class TouchSelectionControllerClientManager; -@@ -88,6 +89,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView, +@@ -94,6 +95,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView, float current_device_scale_factor() const { return current_device_scale_factor_; } @@ -39,16 +39,16 @@ index 904897a..4454205 100644 // Returns the focused RenderWidgetHost inside this |view|'s RWH. RenderWidgetHostImpl* GetFocusedWidget() const; -@@ -119,6 +123,8 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView, +@@ -123,6 +127,8 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView, void EndFrameSubscription() override; void FocusedNodeTouched(const gfx::Point& location_dips_screen, bool editable) override; + void SetHasExternalParent(bool val) override; + bool HasExternalParent() const override; + TouchSelectionControllerClientManager* + GetTouchSelectionControllerClientManager() override; - // This only needs to be overridden by RenderWidgetHostViewBase subclasses - // that handle content embedded within other RenderWidgetHostViews. -@@ -355,6 +361,12 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView, +@@ -365,6 +371,12 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView, // helps to position the full screen widget on the correct monitor. virtual void InitAsFullscreen(RenderWidgetHostView* reference_host_view) = 0; @@ -58,12 +58,12 @@ index 904897a..4454205 100644 + virtual void InitAsGuest(RenderWidgetHostView* parent_host_view, + RenderWidgetHostViewGuest* guest_view) {} + - // Sets the cursor to the one associated with the specified cursor_type + // Sets the cursor for this view to the one associated with the specified + // cursor_type. virtual void UpdateCursor(const WebCursor& cursor) = 0; +@@ -492,6 +504,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView, -@@ -469,6 +481,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView, - - const bool wheel_scroll_latching_enabled_; + WebContentsAccessibility* web_contents_accessibility_; + // True if the widget has a external parent view/window outside of the + // Chromium-controlled view/window hierarchy. @@ -73,7 +73,7 @@ index 904897a..4454205 100644 gfx::Rect current_display_area_; diff --git content/browser/renderer_host/render_widget_host_view_event_handler.cc content/browser/renderer_host/render_widget_host_view_event_handler.cc -index 0401ce6..99e85e9 100644 +index ed267bc..514eade 100644 --- content/browser/renderer_host/render_widget_host_view_event_handler.cc +++ content/browser/renderer_host/render_widget_host_view_event_handler.cc @@ -28,6 +28,10 @@ @@ -87,7 +87,7 @@ index 0401ce6..99e85e9 100644 #if defined(OS_WIN) #include "content/browser/frame_host/render_frame_host_impl.h" #include "content/public/common/context_menu_params.h" -@@ -847,6 +851,14 @@ void RenderWidgetHostViewEventHandler::SetKeyboardFocus() { +@@ -851,6 +855,14 @@ void RenderWidgetHostViewEventHandler::SetKeyboardFocus() { } } #endif @@ -103,10 +103,10 @@ index 0401ce6..99e85e9 100644 if (host_ && set_focus_on_mouse_down_or_key_event_) { set_focus_on_mouse_down_or_key_event_ = false; diff --git content/public/browser/render_widget_host_view.h content/public/browser/render_widget_host_view.h -index e295ef2..dcce231 100644 +index 995f917..dbbd883 100644 --- content/public/browser/render_widget_host_view.h +++ content/public/browser/render_widget_host_view.h -@@ -234,6 +234,14 @@ class CONTENT_EXPORT RenderWidgetHostView { +@@ -236,6 +236,14 @@ class CONTENT_EXPORT RenderWidgetHostView { // when the value has changed. Views must initially default to false. virtual void SetNeedsBeginFrames(bool needs_begin_frames) = 0; @@ -135,7 +135,7 @@ index f772f64..7d13f9f 100644 return host ? host->GetAcceleratedWidget() : NULL; } diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc -index e99be28..4d3fec5 100644 +index 4d0dfbe..7ef6ace 100644 --- ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc +++ ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc @@ -85,6 +85,7 @@ DesktopWindowTreeHostWin::DesktopWindowTreeHostWin( @@ -146,7 +146,7 @@ index e99be28..4d3fec5 100644 tooltip_(NULL) { } -@@ -120,8 +121,12 @@ void DesktopWindowTreeHostWin::Init(aura::Window* content_window, +@@ -123,8 +124,12 @@ void DesktopWindowTreeHostWin::Init(aura::Window* content_window, native_widget_delegate_); HWND parent_hwnd = NULL; @@ -160,7 +160,7 @@ index e99be28..4d3fec5 100644 remove_standard_frame_ = params.remove_standard_frame; has_non_client_view_ = Widget::RequiresNonClientView(params.type); -@@ -824,11 +829,15 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() { +@@ -831,11 +836,15 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() { } void DesktopWindowTreeHostWin::HandleNativeFocus(HWND last_focused_window) { @@ -179,10 +179,10 @@ index e99be28..4d3fec5 100644 bool DesktopWindowTreeHostWin::HandleMouseEvent(const ui::MouseEvent& event) { diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_win.h ui/views/widget/desktop_aura/desktop_window_tree_host_win.h -index 12d0616..ec5742a 100644 +index 3f1c7bf..2658da5 100644 --- ui/views/widget/desktop_aura/desktop_window_tree_host_win.h +++ ui/views/widget/desktop_aura/desktop_window_tree_host_win.h -@@ -256,6 +256,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin +@@ -264,6 +264,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin // True if the window should have the frame removed. bool remove_standard_frame_; @@ -194,10 +194,10 @@ index 12d0616..ec5742a 100644 // a reference. corewm::TooltipWin* tooltip_; diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc -index e7fd89c..d3b2621 100644 +index e8a7a79..1c1057f 100644 --- ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc +++ ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc -@@ -198,6 +198,7 @@ DesktopWindowTreeHostX11::DesktopWindowTreeHostX11( +@@ -152,6 +152,7 @@ DesktopWindowTreeHostX11::DesktopWindowTreeHostX11( use_native_frame_(false), should_maximize_after_map_(false), use_argb_visual_(false), @@ -205,15 +205,15 @@ index e7fd89c..d3b2621 100644 drag_drop_client_(NULL), native_widget_delegate_(native_widget_delegate), desktop_native_widget_aura_(desktop_native_widget_aura), -@@ -211,6 +212,7 @@ DesktopWindowTreeHostX11::DesktopWindowTreeHostX11( +@@ -165,6 +166,7 @@ DesktopWindowTreeHostX11::DesktopWindowTreeHostX11( has_window_focus_(false), has_pointer_focus_(false), modal_dialog_counter_(0), + xwindow_destroyed_(false), close_widget_factory_(this), - weak_factory_(this) {} - -@@ -246,6 +248,8 @@ std::vector DesktopWindowTreeHostX11::GetAllOpenWindows() { + weak_factory_(this) { + } +@@ -201,6 +203,8 @@ std::vector DesktopWindowTreeHostX11::GetAllOpenWindows() { } gfx::Rect DesktopWindowTreeHostX11::GetX11RootWindowBounds() const { @@ -222,7 +222,7 @@ index e7fd89c..d3b2621 100644 return bounds_in_pixels_; } -@@ -554,7 +558,8 @@ void DesktopWindowTreeHostX11::CloseNow() { +@@ -512,7 +516,8 @@ void DesktopWindowTreeHostX11::CloseNow() { // Actually free our native resources. if (ui::PlatformEventSource::GetInstance()) ui::PlatformEventSource::GetInstance()->RemovePlatformEventDispatcher(this); @@ -232,7 +232,7 @@ index e7fd89c..d3b2621 100644 xwindow_ = None; desktop_native_widget_aura_->OnHostClosed(); -@@ -695,6 +700,8 @@ void DesktopWindowTreeHostX11::GetWindowPlacement( +@@ -653,6 +658,8 @@ void DesktopWindowTreeHostX11::GetWindowPlacement( } gfx::Rect DesktopWindowTreeHostX11::GetWindowBoundsInScreen() const { @@ -241,7 +241,7 @@ index e7fd89c..d3b2621 100644 return ToDIPRect(bounds_in_pixels_); } -@@ -1296,6 +1303,8 @@ void DesktopWindowTreeHostX11::SetBoundsInPixels( +@@ -1245,6 +1252,8 @@ void DesktopWindowTreeHostX11::SetBoundsInPixels( } gfx::Point DesktopWindowTreeHostX11::GetLocationOnScreenInPixels() const { @@ -250,7 +250,7 @@ index e7fd89c..d3b2621 100644 return bounds_in_pixels_.origin(); } -@@ -1422,9 +1431,15 @@ void DesktopWindowTreeHostX11::InitX11Window( +@@ -1391,9 +1400,15 @@ void DesktopWindowTreeHostX11::InitX11Window( attribute_mask |= CWBorderPixel; swa.border_pixel = 0; @@ -267,7 +267,7 @@ index e7fd89c..d3b2621 100644 bounds_in_pixels_.y(), bounds_in_pixels_.width(), bounds_in_pixels_.height(), 0, // border width -@@ -2042,6 +2057,10 @@ uint32_t DesktopWindowTreeHostX11::DispatchEvent( +@@ -1998,6 +2013,10 @@ uint32_t DesktopWindowTreeHostX11::DispatchEvent( } break; } @@ -279,10 +279,10 @@ index e7fd89c..d3b2621 100644 case FocusOut: OnFocusEvent(xev->type == FocusIn, event->xfocus.mode, diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h -index 757b780..45d57ae 100644 +index cb18967..0c143d2 100644 --- ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h +++ ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h -@@ -87,6 +87,12 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11 +@@ -86,6 +86,12 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11 // Disables event listening to make |dialog| modal. std::unique_ptr DisableEventListening(); @@ -295,7 +295,7 @@ index 757b780..45d57ae 100644 protected: // Overridden from DesktopWindowTreeHost: void Init(aura::Window* content_window, -@@ -300,6 +306,9 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11 +@@ -305,6 +311,9 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11 // The bounds of |xwindow_|. gfx::Rect bounds_in_pixels_; @@ -305,7 +305,7 @@ index 757b780..45d57ae 100644 // Whenever the bounds are set, we keep the previous set of bounds around so // we can have a better chance of getting the real // |restored_bounds_in_pixels_|. Window managers tend to send a Configure -@@ -339,6 +348,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11 +@@ -344,6 +353,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11 // Whether we used an ARGB visual for our window. bool use_argb_visual_; @@ -316,7 +316,7 @@ index 757b780..45d57ae 100644 DesktopDragDropClientAuraX11* drag_drop_client_; std::unique_ptr x11_non_client_event_filter_; -@@ -426,6 +439,9 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11 +@@ -431,6 +444,9 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11 uint32_t modal_dialog_counter_; @@ -327,10 +327,10 @@ index 757b780..45d57ae 100644 base::WeakPtrFactory weak_factory_; diff --git ui/views/widget/widget.cc ui/views/widget/widget.cc -index fbce29e..0538a4c 100644 +index 32a50e8..06d39f0 100644 --- ui/views/widget/widget.cc +++ ui/views/widget/widget.cc -@@ -131,6 +131,7 @@ Widget::InitParams::InitParams(Type type) +@@ -130,6 +130,7 @@ Widget::InitParams::InitParams(Type type) use_system_default_icon(false), show_state(ui::SHOW_STATE_DEFAULT), parent(nullptr), @@ -338,7 +338,7 @@ index fbce29e..0538a4c 100644 native_widget(nullptr), desktop_window_tree_host(nullptr), layer_type(ui::LAYER_TEXTURED), -@@ -305,7 +306,7 @@ void Widget::Init(const InitParams& in_params) { +@@ -304,7 +305,7 @@ void Widget::Init(const InitParams& in_params) { params.name = params.delegate->GetContentsView()->GetClassName(); params.child |= (params.type == InitParams::TYPE_CONTROL); @@ -347,7 +347,7 @@ index fbce29e..0538a4c 100644 if (params.opacity == views::Widget::InitParams::INFER_OPACITY && params.type != views::Widget::InitParams::TYPE_WINDOW && -@@ -369,7 +370,12 @@ void Widget::Init(const InitParams& in_params) { +@@ -368,7 +369,12 @@ void Widget::Init(const InitParams& in_params) { } } else if (params.delegate) { SetContentsView(params.delegate->GetContentsView()); @@ -374,10 +374,10 @@ index 63fcb9d..7237ae6 100644 // the NativeWidget may specify a default size. If the parent is specified, // |bounds| is in the parent's coordinate system. If the parent is not diff --git ui/views/win/hwnd_message_handler.cc ui/views/win/hwnd_message_handler.cc -index 3c67457..e34a9a6 100644 +index 559f968..f679144 100644 --- ui/views/win/hwnd_message_handler.cc +++ ui/views/win/hwnd_message_handler.cc -@@ -2670,8 +2670,12 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message, +@@ -2650,8 +2650,12 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message, active_mouse_tracking_flags_ = 0; } else if (event.type() == ui::ET_MOUSEWHEEL) { // Reroute the mouse wheel to the window under the pointer if applicable. diff --git a/patch/patches/web_contents_1257_1565.patch b/patch/patches/web_contents_1257_1565.patch index 7fee0fc5e..aa83171d7 100644 --- a/patch/patches/web_contents_1257_1565.patch +++ b/patch/patches/web_contents_1257_1565.patch @@ -1,8 +1,8 @@ diff --git content/browser/web_contents/web_contents_impl.cc content/browser/web_contents/web_contents_impl.cc -index 627a0e5..21c6210 100644 +index 13cb8a2..4bd3e2f 100644 --- content/browser/web_contents/web_contents_impl.cc +++ content/browser/web_contents/web_contents_impl.cc -@@ -1692,6 +1692,12 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { +@@ -1698,6 +1698,12 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { std::string unique_name; frame_tree_.root()->SetFrameName(params.main_frame_name, unique_name); @@ -15,7 +15,7 @@ index 627a0e5..21c6210 100644 WebContentsViewDelegate* delegate = GetContentClient()->browser()->GetWebContentsViewDelegate(this); -@@ -1702,6 +1708,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { +@@ -1708,6 +1714,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { view_.reset(CreateWebContentsView(this, delegate, &render_view_host_delegate_view_)); } @@ -23,7 +23,7 @@ index 627a0e5..21c6210 100644 if (browser_plugin_guest_ && !GuestMode::IsCrossProcessFrameGuest(this)) { view_.reset(new WebContentsViewGuest(this, browser_plugin_guest_.get(), -@@ -2259,6 +2266,15 @@ void WebContentsImpl::CreateNewWindow( +@@ -2272,6 +2279,15 @@ void WebContentsImpl::CreateNewWindow( create_params.renderer_initiated_creation = main_frame_route_id != MSG_ROUTING_NONE; @@ -39,7 +39,7 @@ index 627a0e5..21c6210 100644 WebContentsImpl* new_contents = NULL; if (!is_guest) { create_params.context = view_->GetNativeView(); -@@ -2288,7 +2304,7 @@ void WebContentsImpl::CreateNewWindow( +@@ -2301,7 +2317,7 @@ void WebContentsImpl::CreateNewWindow( // TODO(brettw): It seems bogus that we have to call this function on the // newly created object and give it one of its own member variables. new_view->CreateViewForWidget( @@ -48,7 +48,7 @@ index 627a0e5..21c6210 100644 } // Save the created window associated with the route so we can show it // later. -@@ -5182,7 +5198,7 @@ NavigationEntry* +@@ -5345,7 +5361,7 @@ InterstitialPageImpl* WebContentsImpl::GetInterstitialForRenderManager() { void WebContentsImpl::CreateRenderWidgetHostViewForRenderManager( RenderViewHost* render_view_host) { RenderWidgetHostViewBase* rwh_view = @@ -73,10 +73,10 @@ index fa0afb5..d677b31 100644 WebContents::CreateParams::CreateParams(const CreateParams& other) = default; diff --git content/public/browser/web_contents.h content/public/browser/web_contents.h -index ebd18a0..549329f 100644 +index 06f8d80..4ec9757 100644 --- content/public/browser/web_contents.h +++ content/public/browser/web_contents.h -@@ -67,9 +67,11 @@ class PageState; +@@ -68,9 +68,11 @@ class PageState; class RenderFrameHost; class RenderProcessHost; class RenderViewHost; @@ -88,7 +88,7 @@ index ebd18a0..549329f 100644 struct CustomContextMenuContext; struct DropData; struct Manifest; -@@ -170,6 +172,10 @@ class WebContents : public PageNavigator, +@@ -171,6 +173,10 @@ class WebContents : public PageNavigator, // Note that the pre-created renderer process may not be used if the first // navigation requires a dedicated or privileged process, such as a WebUI. bool initialize_renderer; @@ -100,10 +100,10 @@ index ebd18a0..549329f 100644 // Creates a new WebContents. diff --git content/public/browser/web_contents_delegate.h content/public/browser/web_contents_delegate.h -index 9176c4b..7d73b9d 100644 +index e62fe35..f5b9fe0 100644 --- content/public/browser/web_contents_delegate.h +++ content/public/browser/web_contents_delegate.h -@@ -43,10 +43,12 @@ class ColorChooser; +@@ -43,11 +43,13 @@ class ColorChooser; class JavaScriptDialogManager; class PageState; class RenderFrameHost; @@ -111,12 +111,13 @@ index 9176c4b..7d73b9d 100644 class RenderWidgetHost; class SessionStorageNamespace; class SiteInstance; + class WebContents; class WebContentsImpl; +class WebContentsView; struct ColorSuggestion; struct ContextMenuParams; struct DropData; -@@ -329,6 +331,14 @@ class CONTENT_EXPORT WebContentsDelegate { +@@ -331,6 +333,14 @@ class CONTENT_EXPORT WebContentsDelegate { const std::string& partition_id, SessionStorageNamespace* session_storage_namespace); @@ -130,4 +131,4 @@ index 9176c4b..7d73b9d 100644 + // Notifies the delegate about the creation of a new WebContents. This // typically happens when popups are created. - virtual void WebContentsCreated( + virtual void WebContentsCreated(WebContents* source_contents, diff --git a/patch/patches/webkit_plugin_info_2015.patch b/patch/patches/webkit_plugin_info_2015.patch index f12d427a8..0483f06c8 100644 --- a/patch/patches/webkit_plugin_info_2015.patch +++ b/patch/patches/webkit_plugin_info_2015.patch @@ -1,8 +1,8 @@ diff --git third_party/WebKit/Source/core/dom/DOMImplementation.cpp third_party/WebKit/Source/core/dom/DOMImplementation.cpp -index 372b21d..78107f3 100644 +index 9a2e9f7..4379c0c 100644 --- third_party/WebKit/Source/core/dom/DOMImplementation.cpp +++ third_party/WebKit/Source/core/dom/DOMImplementation.cpp -@@ -242,10 +242,11 @@ Document* DOMImplementation::createDocument(const String& type, +@@ -241,10 +241,11 @@ Document* DOMImplementation::createDocument(const String& type, // For that reason, the origin must be retrieved directly from init.url(). if (init.GetFrame()->IsMainFrame()) { RefPtr origin = SecurityOrigin::Create(init.Url()); @@ -17,10 +17,10 @@ index 372b21d..78107f3 100644 .Top() .GetSecurityContext() diff --git third_party/WebKit/Source/core/frame/LocalFrame.cpp third_party/WebKit/Source/core/frame/LocalFrame.cpp -index 9c6d497..6296f53 100644 +index 72aaf88..ec45bcb 100644 --- third_party/WebKit/Source/core/frame/LocalFrame.cpp +++ third_party/WebKit/Source/core/frame/LocalFrame.cpp -@@ -930,7 +930,7 @@ ContentSettingsClient* LocalFrame::GetContentSettingsClient() { +@@ -1012,7 +1012,7 @@ ContentSettingsClient* LocalFrame::GetContentSettingsClient() { PluginData* LocalFrame::GetPluginData() const { if (!Loader().AllowPlugins(kNotAboutToInstantiatePlugin)) return nullptr; @@ -30,137 +30,145 @@ index 9c6d497..6296f53 100644 } diff --git third_party/WebKit/Source/core/page/Page.cpp third_party/WebKit/Source/core/page/Page.cpp -index 6dc4b21..41d56b5 100644 +index 17f01a7..4a0b13b 100644 --- third_party/WebKit/Source/core/page/Page.cpp +++ third_party/WebKit/Source/core/page/Page.cpp -@@ -289,16 +289,30 @@ void Page::RefreshPlugins() { - - for (const Page* page : AllPages()) { - // Clear out the page's plugin data. -- if (page->plugin_data_) -- page->plugin_data_ = nullptr; -+ if (page->plugin_data_main_frame_) -+ page->plugin_data_main_frame_ = nullptr; -+ if (page->plugin_data_sub_frame_) -+ page->plugin_data_sub_frame_ = nullptr; - } +@@ -118,7 +118,8 @@ Page::Page(PageClients& page_clients) + overscroll_controller_( + OverscrollController::Create(GetVisualViewport(), GetChromeClient())), + main_frame_(nullptr), +- plugin_data_(nullptr), ++ plugin_data_main_frame_(nullptr), ++ plugin_data_sub_frame_(nullptr), + editor_client_(page_clients.editor_client), + spell_checker_client_(page_clients.spell_checker_client), + use_counter_(page_clients.chrome_client && +@@ -292,21 +293,38 @@ void Page::RefreshPlugins() { + PluginData::RefreshBrowserSidePluginCache(); } --PluginData* Page::GetPluginData(SecurityOrigin* main_frame_origin) const { -- if (!plugin_data_ || -- !main_frame_origin->IsSameSchemeHostPort(plugin_data_->Origin())) -- plugin_data_ = PluginData::Create(main_frame_origin); -- return plugin_data_.Get(); +-PluginData* Page::GetPluginData(SecurityOrigin* main_frame_origin) { +- if (!plugin_data_) +- plugin_data_ = PluginData::Create(); +PluginData* Page::GetPluginData(bool is_main_frame, -+ SecurityOrigin* main_frame_origin) const { ++ SecurityOrigin* main_frame_origin) { + if (is_main_frame) { -+ if (!plugin_data_main_frame_ || ++ if (!plugin_data_main_frame_) ++ plugin_data_main_frame_ = PluginData::Create(); + +- if (!plugin_data_->Origin() || +- !main_frame_origin->IsSameSchemeHostPort(plugin_data_->Origin())) +- plugin_data_->UpdatePluginList(main_frame_origin); ++ if (!plugin_data_main_frame_->Origin() || + !main_frame_origin->IsSameSchemeHostPort( -+ plugin_data_main_frame_->Origin())) { -+ plugin_data_main_frame_ = PluginData::Create(true, main_frame_origin); -+ } ++ plugin_data_main_frame_->Origin())) ++ plugin_data_main_frame_->UpdatePluginList(true, main_frame_origin); + +- return plugin_data_.Get(); + return plugin_data_main_frame_.Get(); + } else { -+ if (!plugin_data_sub_frame_ || ++ if (!plugin_data_sub_frame_) ++ plugin_data_sub_frame_ = PluginData::Create(); ++ ++ if (!plugin_data_sub_frame_->Origin() || + !main_frame_origin->IsSameSchemeHostPort( -+ plugin_data_sub_frame_->Origin())) { -+ plugin_data_sub_frame_ = PluginData::Create(false, main_frame_origin); -+ } ++ plugin_data_sub_frame_->Origin())) ++ plugin_data_sub_frame_->UpdatePluginList(false, main_frame_origin); ++ + return plugin_data_sub_frame_.Get(); + } } - void Page::SetValidationMessageClient(ValidationMessageClient* client) { + void Page::ResetPluginData() { + for (Page* page : AllPages()) { +- if (page->plugin_data_) { +- page->plugin_data_->ResetPluginData(); ++ if (page->plugin_data_main_frame_ || page->plugin_data_sub_frame_) { ++ if (page->plugin_data_main_frame_) ++ page->plugin_data_main_frame_->ResetPluginData(); ++ if (page->plugin_data_sub_frame_) ++ page->plugin_data_sub_frame_->ResetPluginData(); + page->NotifyPluginsChanged(); + } + } +@@ -653,7 +671,8 @@ DEFINE_TRACE(Page) { + visitor->Trace(visual_viewport_); + visitor->Trace(overscroll_controller_); + visitor->Trace(main_frame_); +- visitor->Trace(plugin_data_); ++ visitor->Trace(plugin_data_main_frame_); ++ visitor->Trace(plugin_data_sub_frame_); + visitor->Trace(validation_message_client_); + visitor->Trace(use_counter_); + visitor->Trace(plugins_changed_observers_); diff --git third_party/WebKit/Source/core/page/Page.h third_party/WebKit/Source/core/page/Page.h -index e644faa..2fe0d37 100644 +index f854ba7..0fd317c 100644 --- third_party/WebKit/Source/core/page/Page.h +++ third_party/WebKit/Source/core/page/Page.h -@@ -132,7 +132,8 @@ class CORE_EXPORT Page final : public GarbageCollectedFinalized, +@@ -135,7 +135,8 @@ class CORE_EXPORT Page final : public GarbageCollectedFinalized, ViewportDescription GetViewportDescription() const; - static void RefreshPlugins(); -- PluginData* GetPluginData(SecurityOrigin* main_frame_origin) const; + // Returns the plugin data associated with |main_frame_origin|. +- PluginData* GetPluginData(SecurityOrigin* main_frame_origin); + PluginData* GetPluginData(bool is_main_frame, -+ SecurityOrigin* main_frame_origin) const; ++ SecurityOrigin* main_frame_origin); - EditorClient& GetEditorClient() const { return *editor_client_; } - SpellCheckerClient& GetSpellCheckerClient() const { -@@ -324,7 +325,8 @@ class CORE_EXPORT Page final : public GarbageCollectedFinalized, + // Refreshes the browser-side plugin cache. + static void RefreshPlugins(); +@@ -348,7 +349,8 @@ class CORE_EXPORT Page final : public GarbageCollectedFinalized, // longer needed. Member main_frame_; -- mutable RefPtr plugin_data_; -+ mutable RefPtr plugin_data_main_frame_; -+ mutable RefPtr plugin_data_sub_frame_; +- Member plugin_data_; ++ Member plugin_data_main_frame_; ++ Member plugin_data_sub_frame_; EditorClient* const editor_client_; SpellCheckerClient* const spell_checker_client_; diff --git third_party/WebKit/Source/platform/plugins/PluginData.cpp third_party/WebKit/Source/platform/plugins/PluginData.cpp -index 03618f6..5ac59e8 100644 +index c4fb8d7..1d5945c 100644 --- third_party/WebKit/Source/platform/plugins/PluginData.cpp +++ third_party/WebKit/Source/platform/plugins/PluginData.cpp -@@ -30,11 +30,12 @@ - - namespace blink { - --PluginData::PluginData(SecurityOrigin* main_frame_origin) -- : main_frame_origin_(main_frame_origin) { -+PluginData::PluginData(bool is_main_frame, SecurityOrigin* main_frame_origin) -+ : is_main_frame_(is_main_frame), -+ main_frame_origin_(main_frame_origin) { - PluginListBuilder builder(&plugins_); - Platform::Current()->GetPluginList( -- false, WebSecurityOrigin(main_frame_origin_), &builder); -+ false, is_main_frame_, WebSecurityOrigin(main_frame_origin_), &builder); - - for (unsigned i = 0; i < plugins_.size(); ++i) { - const PluginInfo& plugin = plugins_[i]; -@@ -73,7 +74,8 @@ String PluginData::PluginNameForMimeType(const String& mime_type) const { +@@ -79,16 +79,18 @@ DEFINE_TRACE(PluginData) { + // static void PluginData::RefreshBrowserSidePluginCache() { - Vector plugins; - PluginListBuilder builder(&plugins); + PluginListBuilder builder(nullptr); - Platform::Current()->GetPluginList(true, WebSecurityOrigin::CreateUnique(), + Platform::Current()->GetPluginList(true, true, + WebSecurityOrigin::CreateUnique(), &builder); } +-void PluginData::UpdatePluginList(SecurityOrigin* main_frame_origin) { ++void PluginData::UpdatePluginList(bool is_main_frame, ++ SecurityOrigin* main_frame_origin) { + ResetPluginData(); + main_frame_origin_ = main_frame_origin; + PluginListBuilder builder(&plugins_); + Platform::Current()->GetPluginList( +- false, WebSecurityOrigin(main_frame_origin_), &builder); ++ false, is_main_frame, WebSecurityOrigin(main_frame_origin_), &builder); + + for (PluginInfo* plugin_info : plugins_) { + for (MimeClassInfo* mime_class_info : plugin_info->mimes_) diff --git third_party/WebKit/Source/platform/plugins/PluginData.h third_party/WebKit/Source/platform/plugins/PluginData.h -index cdf3381..671f17c 100644 +index 6cb520cd..fdcaf93 100644 --- third_party/WebKit/Source/platform/plugins/PluginData.h +++ third_party/WebKit/Source/platform/plugins/PluginData.h -@@ -52,8 +52,9 @@ class PLATFORM_EXPORT PluginData : public RefCounted { - WTF_MAKE_NONCOPYABLE(PluginData); - - public: -- static PassRefPtr Create(SecurityOrigin* main_frame_origin) { -- return AdoptRef(new PluginData(main_frame_origin)); -+ static PassRefPtr Create(bool is_main_frame, -+ SecurityOrigin* main_frame_origin) { -+ return AdoptRef(new PluginData(is_main_frame, main_frame_origin)); - } - - const Vector& Plugins() const { return plugins_; } -@@ -71,12 +72,13 @@ class PLATFORM_EXPORT PluginData : public RefCounted { - static void RefreshBrowserSidePluginCache(); - - private: -- explicit PluginData(SecurityOrigin* main_frame_origin); -+ explicit PluginData(bool is_main_frame, SecurityOrigin* main_frame_origin); - const PluginInfo* PluginInfoForMimeType(const String& mime_type) const; - - Vector plugins_; - Vector mimes_; - Vector mime_plugin_indices_; -+ bool is_main_frame_; - RefPtr main_frame_origin_; - }; +@@ -93,7 +93,7 @@ class PLATFORM_EXPORT PluginData final + const HeapVector>& Plugins() const { return plugins_; } + const HeapVector>& Mimes() const { return mimes_; } + const SecurityOrigin* Origin() const { return main_frame_origin_.Get(); } +- void UpdatePluginList(SecurityOrigin* main_frame_origin); ++ void UpdatePluginList(bool is_main_frame, SecurityOrigin* main_frame_origin); + void ResetPluginData(); + bool SupportsMimeType(const String& mime_type) const; diff --git third_party/WebKit/public/platform/Platform.h third_party/WebKit/public/platform/Platform.h -index f7360bf6..f7599cc 100644 +index bf92050..6f4949d 100644 --- third_party/WebKit/public/platform/Platform.h +++ third_party/WebKit/public/platform/Platform.h -@@ -363,6 +363,7 @@ class BLINK_PLATFORM_EXPORT Platform { +@@ -379,6 +379,7 @@ class BLINK_PLATFORM_EXPORT Platform { // satisfy this call. mainFrameOrigin is used by the browser process to // filter plugins from the plugin list based on content settings. virtual void GetPluginList(bool refresh, diff --git a/patch/patches/webkit_popups.patch b/patch/patches/webkit_popups.patch index 527ef4d7d..1e0a48f33 100644 --- a/patch/patches/webkit_popups.patch +++ b/patch/patches/webkit_popups.patch @@ -1,8 +1,8 @@ diff --git third_party/WebKit/Source/core/exported/WebViewBase.h third_party/WebKit/Source/core/exported/WebViewBase.h -index ed45829..a43bd1e 100644 +index 5b6db09f..73c2260 100644 --- third_party/WebKit/Source/core/exported/WebViewBase.h +++ third_party/WebKit/Source/core/exported/WebViewBase.h -@@ -151,7 +151,7 @@ class WebViewBase : public WebView, public RefCounted { +@@ -157,7 +157,7 @@ class WebViewBase : public WebView, public RefCounted { // Returns true if popup menus should be rendered by the browser, false if // they should be rendered by WebKit (which is the default). @@ -12,10 +12,10 @@ index ed45829..a43bd1e 100644 virtual GraphicsLayer* RootGraphicsLayer() = 0; virtual void RegisterViewportLayersWithCompositor() = 0; diff --git third_party/WebKit/Source/web/ChromeClientImpl.cpp third_party/WebKit/Source/web/ChromeClientImpl.cpp -index 2a35f2c..dded520 100644 +index cf36ed93..e508f14 100644 --- third_party/WebKit/Source/web/ChromeClientImpl.cpp +++ third_party/WebKit/Source/web/ChromeClientImpl.cpp -@@ -935,7 +935,7 @@ PopupMenu* ChromeClientImpl::OpenPopupMenu(LocalFrame& frame, +@@ -781,7 +781,7 @@ PopupMenu* ChromeClientImpl::OpenPopupMenu(LocalFrame& frame, return nullptr; NotifyPopupOpeningObservers(); @@ -23,12 +23,12 @@ index 2a35f2c..dded520 100644 + if (web_view_->UseExternalPopupMenus()) return new ExternalPopupMenu(frame, select, *web_view_); - DCHECK(RuntimeEnabledFeatures::pagePopupEnabled()); + DCHECK(RuntimeEnabledFeatures::PagePopupEnabled()); diff --git third_party/WebKit/Source/web/WebViewImpl.cpp third_party/WebKit/Source/web/WebViewImpl.cpp -index dccdd58..a2a7ab9 100644 +index f7fc7dd..7aa4f01 100644 --- third_party/WebKit/Source/web/WebViewImpl.cpp +++ third_party/WebKit/Source/web/WebViewImpl.cpp -@@ -355,6 +355,7 @@ WebViewImpl::WebViewImpl(WebViewClient* client, +@@ -320,6 +320,7 @@ WebViewImpl::WebViewImpl(WebViewClient* client, enable_fake_page_scale_animation_for_testing_(false), fake_page_scale_animation_page_scale_factor_(0), fake_page_scale_animation_use_anchor_(false), @@ -36,7 +36,7 @@ index dccdd58..a2a7ab9 100644 compositor_device_scale_factor_override_(0), suppress_next_keypress_event_(false), ime_accept_events_(true), -@@ -3693,12 +3694,13 @@ void WebViewImpl::MainFrameScrollOffsetChanged() { +@@ -3644,12 +3645,13 @@ void WebViewImpl::MainFrameScrollOffsetChanged() { dev_tools_emulator_->MainFrameScrollOrScaleChanged(); } @@ -55,10 +55,10 @@ index dccdd58..a2a7ab9 100644 void WebViewImpl::SetBackgroundColorOverride(WebColor color) { diff --git third_party/WebKit/Source/web/WebViewImpl.h third_party/WebKit/Source/web/WebViewImpl.h -index ba65d8f..490e451 100644 +index 5ea6e7b..5c7b4d8 100644 --- third_party/WebKit/Source/web/WebViewImpl.h +++ third_party/WebKit/Source/web/WebViewImpl.h -@@ -357,7 +357,8 @@ class WEB_EXPORT WebViewImpl final +@@ -345,7 +345,8 @@ class WEB_EXPORT WebViewImpl final // Returns true if popup menus should be rendered by the browser, false if // they should be rendered by WebKit (which is the default). @@ -68,7 +68,7 @@ index ba65d8f..490e451 100644 bool ShouldAutoResize() const override { return should_auto_resize_; } -@@ -650,6 +651,8 @@ class WEB_EXPORT WebViewImpl final +@@ -637,6 +638,8 @@ class WEB_EXPORT WebViewImpl final float fake_page_scale_animation_page_scale_factor_; bool fake_page_scale_animation_use_anchor_; @@ -78,10 +78,10 @@ index ba65d8f..490e451 100644 TransformationMatrix device_emulation_transform_; diff --git third_party/WebKit/public/web/WebView.h third_party/WebKit/public/web/WebView.h -index c55118b..56d8896 100644 +index 1917509..536c147 100644 --- third_party/WebKit/public/web/WebView.h +++ third_party/WebKit/public/web/WebView.h -@@ -399,6 +399,7 @@ class WebView : protected WebWidget { +@@ -374,6 +374,7 @@ class WebView : protected WebWidget { // Sets whether select popup menus should be rendered by the browser. BLINK_EXPORT static void SetUseExternalPopupMenus(bool); diff --git a/patch/patches/webui_2037.patch b/patch/patches/webui_2037.patch index e77e7649b..15640c50b 100644 --- a/patch/patches/webui_2037.patch +++ b/patch/patches/webui_2037.patch @@ -1,8 +1,8 @@ diff --git chrome/browser/ui/webui/net_internals/net_internals_ui.cc chrome/browser/ui/webui/net_internals/net_internals_ui.cc -index 2fa6e2a..f7bb035 100644 +index 028eff9..b8390d2 100644 --- chrome/browser/ui/webui/net_internals/net_internals_ui.cc +++ chrome/browser/ui/webui/net_internals/net_internals_ui.cc -@@ -526,8 +526,7 @@ void NetInternalsMessageHandler::OnGetSessionNetworkStats( +@@ -525,8 +525,7 @@ void NetInternalsMessageHandler::OnGetSessionNetworkStats( const base::ListValue* list) { DCHECK_CURRENTLY_ON(BrowserThread::UI); SendJavascriptCommand( @@ -12,12 +12,12 @@ index 2fa6e2a..f7bb035 100644 } void NetInternalsMessageHandler::OnGetExtensionInfo( -@@ -623,9 +622,17 @@ void NetInternalsMessageHandler::IOThreadImpl::OnRendererReady( +@@ -622,9 +621,17 @@ void NetInternalsMessageHandler::IOThreadImpl::OnRendererReady( PrePopulateEventList(); - // Register with network stack to observe events. -- io_thread_->net_log()->DeprecatedAddObserver( +- io_thread_->net_log()->AddObserver( - this, net::NetLogCaptureMode::IncludeCookiesAndCredentials()); + net::NetLog* net_log = nullptr; + if (io_thread_) @@ -27,22 +27,19 @@ index 2fa6e2a..f7bb035 100644 + + if (net_log) { + // Register with network stack to observe events. -+ net_log->DeprecatedAddObserver( ++ net_log->AddObserver( + this, net::NetLogCaptureMode::IncludeCookiesAndCredentials()); + } } void NetInternalsMessageHandler::IOThreadImpl::OnGetNetInfo( -@@ -1027,8 +1034,10 @@ void NetInternalsMessageHandler::IOThreadImpl::PrePopulateEventList() { +@@ -1026,7 +1033,8 @@ void NetInternalsMessageHandler::IOThreadImpl::PrePopulateEventList() { std::set contexts; for (const auto& getter : context_getters_) contexts.insert(getter->GetURLRequestContext()); -- contexts.insert(io_thread_->globals()->proxy_script_fetcher_context.get()); -- contexts.insert(io_thread_->globals()->system_request_context.get()); -+ if (io_thread_) { -+ contexts.insert(io_thread_->globals()->proxy_script_fetcher_context.get()); -+ contexts.insert(io_thread_->globals()->system_request_context.get()); -+ } +- contexts.insert(io_thread_->globals()->system_request_context); ++ if (io_thread_) ++ contexts.insert(io_thread_->globals()->system_request_context); // Add entries for ongoing network objects. CreateNetLogEntriesForActiveObjects(contexts, this); diff --git a/patch/patches/webview_plugin_2020.patch b/patch/patches/webview_plugin_2020.patch index 3ce646167..da7f89b58 100644 --- a/patch/patches/webview_plugin_2020.patch +++ b/patch/patches/webview_plugin_2020.patch @@ -1,8 +1,8 @@ diff --git chrome/app/generated_resources.grd chrome/app/generated_resources.grd -index 3ff9d30..5b53c44 100644 +index 7bd88ac..7fe77b3 100644 --- chrome/app/generated_resources.grd +++ chrome/app/generated_resources.grd -@@ -5158,7 +5158,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5045,7 +5045,7 @@ Keep your key file in a safe place. You will need it to create new versions of y diff --git a/tests/cefclient/browser/client_handler.cc b/tests/cefclient/browser/client_handler.cc index 06d2881cc..fc3d92a3e 100644 --- a/tests/cefclient/browser/client_handler.cc +++ b/tests/cefclient/browser/client_handler.cc @@ -695,6 +695,13 @@ bool ClientHandler::OnCertificateError(CefRefPtr browser, CefRefPtr callback) { CEF_REQUIRE_UI_THREAD(); + if (cert_error == ERR_CERT_AUTHORITY_INVALID && + request_url.ToString().find("https://www.magpcss.org/") == 0U) { + // Allow the CEF Forum to load. It has a self-signed certificate. + callback->Continue(true); + return true; + } + CefRefPtr cert = ssl_info->GetX509Certificate(); if (cert.get()) { // Load the error page. diff --git a/tests/ceftests/os_rendering_unittest.cc b/tests/ceftests/os_rendering_unittest.cc index b9cf5ff2a..82d060715 100644 --- a/tests/ceftests/os_rendering_unittest.cc +++ b/tests/ceftests/os_rendering_unittest.cc @@ -472,7 +472,11 @@ class OSRTestHandler : public RoutingTestHandler, EXPECT_EQ(dirtyRects.size(), 1U); EXPECT_TRUE(IsFullRepaint(dirtyRects[0], GetScaledInt(kOsrWidth), GetScaledInt(kOsrHeight))); +#if defined(OS_MACOSX) + EXPECT_EQ(0xfffd8081U, *(reinterpret_cast(buffer))); +#else EXPECT_EQ(0xffff7f7fU, *(reinterpret_cast(buffer))); +#endif DestroySucceededTestSoon(); } break; @@ -482,7 +486,11 @@ class OSRTestHandler : public RoutingTestHandler, EXPECT_EQ(dirtyRects.size(), 1U); EXPECT_TRUE(IsFullRepaint(dirtyRects[0], GetScaledInt(kOsrWidth), GetScaledInt(kOsrHeight))); +#if defined(OS_MACOSX) + EXPECT_EQ(0x807e0308U, *(reinterpret_cast(buffer))); +#else EXPECT_EQ(0x80800000U, *(reinterpret_cast(buffer))); +#endif DestroySucceededTestSoon(); } break; @@ -724,11 +732,9 @@ class OSRTestHandler : public RoutingTestHandler, // first pixel of border #if defined(OS_MACOSX) - EXPECT_EQ(0xff5d99d6, *(reinterpret_cast(buffer))); -#elif defined(OS_LINUX) || defined(OS_WIN) - EXPECT_EQ(0xff6497ea, *(reinterpret_cast(buffer))); + EXPECT_EQ(0xff609ad4U, *(reinterpret_cast(buffer))); #else -#error "Unsupported platform" + EXPECT_EQ(0xff6497eaU, *(reinterpret_cast(buffer))); #endif if (ExpectComputedPopupSize()) { EXPECT_EQ(expanded_select_rect.width, width); @@ -1013,10 +1019,15 @@ class OSRTestHandler : public RoutingTestHandler, if (image.get()) { // Drag image height seems to always be + 1px greater than the drag rect // on Linux. Therefore allow it to be +/- 1px. +#if defined(OS_MACOSX) + EXPECT_NEAR(static_cast(image->GetWidth()), GetScaledInt(15), 1); + EXPECT_NEAR(static_cast(image->GetHeight()), GetScaledInt(15), 1); +#else EXPECT_NEAR(static_cast(image->GetWidth()), GetScaledInt(kDragDivRect.width), 1); EXPECT_NEAR(static_cast(image->GetHeight()), GetScaledInt(kDragDivRect.height), 1); +#endif } // During testing hotspot (x, y) was (15, 23) at 1x scale and (15, 18) at // 2x scale. Since the mechanism for determining this position is unclear diff --git a/tests/ceftests/request_unittest.cc b/tests/ceftests/request_unittest.cc index 3f791e93e..716b6f85b 100644 --- a/tests/ceftests/request_unittest.cc +++ b/tests/ceftests/request_unittest.cc @@ -131,8 +131,7 @@ void CreateRequest(CefRefPtr& request) { request->SetURL(kTestUrl); request->SetMethod("POST"); - request->SetReferrer("http://tests.com/main.html", - REFERRER_POLICY_NO_REFERRER_WHEN_DOWNGRADE); + request->SetReferrer("http://tests.com/main.html", REFERRER_POLICY_DEFAULT); CefRequest::HeaderMap headers; headers.insert(std::make_pair("HeaderA", "ValueA")); diff --git a/tests/ceftests/urlrequest_unittest.cc b/tests/ceftests/urlrequest_unittest.cc index 4bc6eb47f..42885fd5c 100644 --- a/tests/ceftests/urlrequest_unittest.cc +++ b/tests/ceftests/urlrequest_unittest.cc @@ -721,7 +721,7 @@ class RequestTestRunner : public base::RefCountedThreadSafe { // The referrer URL must be HTTP or HTTPS. This is enforced by // GURL::GetAsReferrer() called from URLRequest::SetReferrer(). settings_.request->SetReferrer("http://tests.com/referrer.html", - REFERRER_POLICY_NO_REFERRER_WHEN_DOWNGRADE); + REFERRER_POLICY_DEFAULT); settings_.response = CefResponse::Create(); settings_.response->SetMimeType("text/html"); diff --git a/tools/make_cpptoc_impl.py b/tools/make_cpptoc_impl.py index c55b3476f..539cefa38 100644 --- a/tools/make_cpptoc_impl.py +++ b/tools/make_cpptoc_impl.py @@ -651,7 +651,7 @@ def make_cpptoc_class_impl(header, clsname, impl): '}\n\n' const += '#if DCHECK_IS_ON()\n'+ \ - 'template<> base::AtomicRefCount '+parent_sig+'::DebugObjCt = 0;\n'+ \ + 'template<> base::AtomicRefCount '+parent_sig+'::DebugObjCt ATOMIC_DECLARATION;\n'+ \ '#endif\n\n'+ \ 'template<> CefWrapperType '+parent_sig+'::kWrapperType = '+get_wrapper_type_enum(clsname)+';' diff --git a/tools/make_ctocpp_impl.py b/tools/make_ctocpp_impl.py index 42dbf763e..5610727eb 100644 --- a/tools/make_ctocpp_impl.py +++ b/tools/make_ctocpp_impl.py @@ -646,7 +646,7 @@ def make_ctocpp_class_impl(header, clsname, impl): '}\n\n' const += '#if DCHECK_IS_ON()\n'+ \ - 'template<> base::AtomicRefCount '+parent_sig+'::DebugObjCt = 0;\n'+ \ + 'template<> base::AtomicRefCount '+parent_sig+'::DebugObjCt ATOMIC_DECLARATION;\n'+ \ '#endif\n\n'+ \ 'template<> CefWrapperType '+parent_sig+'::kWrapperType = '+get_wrapper_type_enum(clsname)+';'