diff options
author | Avi Drissman <avi@chromium.org> | 2015-12-07 15:19:21 -0500 |
---|---|---|
committer | Avi Drissman <avi@chromium.org> | 2015-12-07 20:21:06 +0000 |
commit | 09b359e586c35cf06a985dcf326a31aea4a1c6db (patch) | |
tree | d5cf97a62966f8419f8d08ab1a261de109d35690 | |
parent | 2f64bd77059a51a724206814202197c7b406efdd (diff) | |
download | chromium_src-09b359e586c35cf06a985dcf326a31aea4a1c6db.zip chromium_src-09b359e586c35cf06a985dcf326a31aea4a1c6db.tar.gz chromium_src-09b359e586c35cf06a985dcf326a31aea4a1c6db.tar.bz2 |
Enforce marking "override" for functions overriding Blink.
BUG=535367
TEST=it all stays working
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel
R=thakis@chromium.org
TBR=ben@chromium.org
Committed: https://crrev.com/32ff552858e014d454ce8b181f5aca1dfcf8f8fd
Cr-Commit-Position: refs/heads/master@{#363482}
Review URL: https://codereview.chromium.org/1370923002 .
Cr-Commit-Position: refs/heads/master@{#363564}
20 files changed, 127 insertions, 133 deletions
diff --git a/android_webview/renderer/aw_content_settings_client.h b/android_webview/renderer/aw_content_settings_client.h index 5d44551..90a9479 100644 --- a/android_webview/renderer/aw_content_settings_client.h +++ b/android_webview/renderer/aw_content_settings_client.h @@ -20,14 +20,14 @@ class AwContentSettingsClient : public content::RenderFrameObserver, ~AwContentSettingsClient() override; // blink::WebContentSettingsClient implementation. - virtual bool allowDisplayingInsecureContent( + bool allowDisplayingInsecureContent( bool enabled_per_settings, const blink::WebSecurityOrigin& origin, - const blink::WebURL& url); - virtual bool allowRunningInsecureContent( + const blink::WebURL& url) override; + bool allowRunningInsecureContent( bool enabled_per_settings, const blink::WebSecurityOrigin& origin, - const blink::WebURL& url); + const blink::WebURL& url) override; DISALLOW_COPY_AND_ASSIGN(AwContentSettingsClient); }; diff --git a/build/common.gypi b/build/common.gypi index 544f964..6b2cb0a 100644 --- a/build/common.gypi +++ b/build/common.gypi @@ -2227,7 +2227,8 @@ 'clang_dynlib_flags%': '', }], ], - 'clang_plugin_args%': '-Xclang -plugin-arg-find-bad-constructs -Xclang check-templates ', + 'clang_plugin_args%': '-Xclang -plugin-arg-find-bad-constructs -Xclang check-templates ' + '-Xclang -plugin-arg-find-bad-constructs -Xclang enforce-overriding-blink ', }, # If you change these, also change build/config/clang/BUILD.gn. 'clang_chrome_plugins_flags%': diff --git a/build/config/clang/BUILD.gn b/build/config/clang/BUILD.gn index 02c5f2c..e560431 100644 --- a/build/config/clang/BUILD.gn +++ b/build/config/clang/BUILD.gn @@ -40,6 +40,10 @@ config("find_bad_constructs") { "-plugin-arg-find-bad-constructs", "-Xclang", "check-templates", + "-Xclang", + "-plugin-arg-find-bad-constructs", + "-Xclang", + "enforce-overriding-blink", ] } } diff --git a/cc/blink/web_scroll_offset_animation_curve_impl.h b/cc/blink/web_scroll_offset_animation_curve_impl.h index 32c6fb9..3a21853 100644 --- a/cc/blink/web_scroll_offset_animation_curve_impl.h +++ b/cc/blink/web_scroll_offset_animation_curve_impl.h @@ -33,8 +33,8 @@ class WebScrollOffsetAnimationCurveImpl blink::WebFloatPoint getValue(double time) const override; double duration() const override; - virtual blink::WebFloatPoint targetValue() const; - virtual void updateTarget(double time, blink::WebFloatPoint new_target); + blink::WebFloatPoint targetValue() const override; + void updateTarget(double time, blink::WebFloatPoint new_target) override; scoped_ptr<cc::AnimationCurve> CloneToAnimationCurve() const; diff --git a/components/test_runner/mock_web_theme_engine.h b/components/test_runner/mock_web_theme_engine.h index 362ed02..fc6d0ac 100644 --- a/components/test_runner/mock_web_theme_engine.h +++ b/components/test_runner/mock_web_theme_engine.h @@ -15,12 +15,12 @@ class MockWebThemeEngine : public blink::WebThemeEngine { #if !defined(OS_MACOSX) // blink::WebThemeEngine: - virtual blink::WebSize getSize(blink::WebThemeEngine::Part); - virtual void paint(blink::WebCanvas*, - blink::WebThemeEngine::Part, - blink::WebThemeEngine::State, - const blink::WebRect&, - const blink::WebThemeEngine::ExtraParams*); + blink::WebSize getSize(blink::WebThemeEngine::Part) override; + void paint(blink::WebCanvas*, + blink::WebThemeEngine::Part, + blink::WebThemeEngine::State, + const blink::WebRect&, + const blink::WebThemeEngine::ExtraParams*) override; #endif // !defined(OS_MACOSX) }; diff --git a/content/browser/android/in_process/context_provider_in_process.cc b/content/browser/android/in_process/context_provider_in_process.cc index 71f8010..cd9bd7d 100644 --- a/content/browser/android/in_process/context_provider_in_process.cc +++ b/content/browser/android/in_process/context_provider_in_process.cc @@ -25,11 +25,11 @@ class ContextProviderInProcess::LostContextCallbackProxy provider_->WebContext3DImpl()->setContextLostCallback(this); } - virtual ~LostContextCallbackProxy() { + ~LostContextCallbackProxy() override { provider_->WebContext3DImpl()->setContextLostCallback(NULL); } - virtual void onContextLost() { + void onContextLost() override { provider_->OnLostContext(); } diff --git a/content/child/blink_platform_impl.h b/content/child/blink_platform_impl.h index b6850f2..c77dd9a 100644 --- a/content/child/blink_platform_impl.h +++ b/content/child/blink_platform_impl.h @@ -119,7 +119,7 @@ class CONTENT_EXPORT BlinkPlatformImpl const char* category_name) override; TraceEventAPIAtomicWord* getTraceSamplingState( const unsigned thread_bucket) override; - virtual TraceEventHandle addTraceEvent( + TraceEventHandle addTraceEvent( char phase, const unsigned char* category_group_enabled, const char* name, @@ -131,7 +131,7 @@ class CONTENT_EXPORT BlinkPlatformImpl const unsigned char* arg_types, const unsigned long long* arg_values, blink::WebConvertableToTraceFormat* convertable_values, - unsigned int flags); + unsigned int flags) override; virtual TraceEventHandle addTraceEvent( char phase, const unsigned char* category_group_enabled, diff --git a/content/child/service_worker/service_worker_dispatcher_unittest.cc b/content/child/service_worker/service_worker_dispatcher_unittest.cc index 5df0501..93d9465 100644 --- a/content/child/service_worker/service_worker_dispatcher_unittest.cc +++ b/content/child/service_worker/service_worker_dispatcher_unittest.cc @@ -116,13 +116,13 @@ class MockWebServiceWorkerProviderClientImpl dispatcher_->AddProviderClient(provider_id, this); } - ~MockWebServiceWorkerProviderClientImpl() { + ~MockWebServiceWorkerProviderClientImpl() override { dispatcher_->RemoveProviderClient(provider_id_); } void setController( blink::WebPassOwnPtr<blink::WebServiceWorker::Handle> handle, - bool shouldNotifyControllerChange) { + bool shouldNotifyControllerChange) override { // WebPassOwnPtr cannot be owned in Chromium, so drop the handle here. // The destruction releases ServiceWorkerHandleReference. is_set_controlled_called_ = true; diff --git a/content/child/webthemeengine_impl_android.h b/content/child/webthemeengine_impl_android.h index e641a60..3483ab5 100644 --- a/content/child/webthemeengine_impl_android.h +++ b/content/child/webthemeengine_impl_android.h @@ -12,13 +12,12 @@ namespace content { class WebThemeEngineImpl : public blink::WebThemeEngine { public: // WebThemeEngine methods: - virtual blink::WebSize getSize(blink::WebThemeEngine::Part); - virtual void paint( - blink::WebCanvas* canvas, - blink::WebThemeEngine::Part part, - blink::WebThemeEngine::State state, - const blink::WebRect& rect, - const blink::WebThemeEngine::ExtraParams* extra_params); + blink::WebSize getSize(blink::WebThemeEngine::Part) override; + void paint(blink::WebCanvas* canvas, + blink::WebThemeEngine::Part part, + blink::WebThemeEngine::State state, + const blink::WebRect& rect, + const blink::WebThemeEngine::ExtraParams* extra_params) override; }; } // namespace content diff --git a/content/child/webthemeengine_impl_default.h b/content/child/webthemeengine_impl_default.h index a05313a..df25238 100644 --- a/content/child/webthemeengine_impl_default.h +++ b/content/child/webthemeengine_impl_default.h @@ -12,13 +12,12 @@ namespace content { class WebThemeEngineImpl : public blink::WebThemeEngine { public: // WebThemeEngine methods: - virtual blink::WebSize getSize(blink::WebThemeEngine::Part); - virtual void paint( - blink::WebCanvas* canvas, - blink::WebThemeEngine::Part part, - blink::WebThemeEngine::State state, - const blink::WebRect& rect, - const blink::WebThemeEngine::ExtraParams* extra_params); + blink::WebSize getSize(blink::WebThemeEngine::Part) override; + void paint(blink::WebCanvas* canvas, + blink::WebThemeEngine::Part part, + blink::WebThemeEngine::State state, + const blink::WebRect& rect, + const blink::WebThemeEngine::ExtraParams* extra_params) override; virtual void paintStateTransition(blink::WebCanvas* canvas, blink::WebThemeEngine::Part part, blink::WebThemeEngine::State startState, diff --git a/content/ppapi_plugin/ppapi_blink_platform_impl.cc b/content/ppapi_plugin/ppapi_blink_platform_impl.cc index ddfdc78..de977b2 100644 --- a/content/ppapi_plugin/ppapi_blink_platform_impl.cc +++ b/content/ppapi_plugin/ppapi_blink_platform_impl.cc @@ -45,9 +45,10 @@ class PpapiBlinkPlatformImpl::SandboxSupport : public WebSandboxSupport { bool loadFont(NSFont* srcFont, CGFontRef* out, uint32_t* fontID) override; #elif defined(OS_POSIX) SandboxSupport(); - void getFallbackFontForCharacter(WebUChar32 character, - const char* preferred_locale, - blink::WebFallbackFont* fallbackFont); + void getFallbackFontForCharacter( + WebUChar32 character, + const char* preferred_locale, + blink::WebFallbackFont* fallbackFont) override; void getRenderStyleForStrike(const char* family, int sizeAndStyle, blink::WebFontRenderStyle* out) override; diff --git a/content/renderer/media/android/media_info_loader.h b/content/renderer/media/android/media_info_loader.h index b421fb3..067e580 100644 --- a/content/renderer/media/android/media_info_loader.h +++ b/content/renderer/media/android/media_info_loader.h @@ -59,7 +59,7 @@ class CONTENT_EXPORT MediaInfoLoader : private blink::WebURLLoaderClient { const GURL& url, blink::WebMediaPlayer::CORSMode cors_mode, const ReadyCB& ready_cb); - virtual ~MediaInfoLoader(); + ~MediaInfoLoader() override; // Start loading media info. void Start(blink::WebFrame* frame); @@ -80,32 +80,25 @@ class CONTENT_EXPORT MediaInfoLoader : private blink::WebURLLoaderClient { blink::WebURLLoader* loader, blink::WebURLRequest& newRequest, const blink::WebURLResponse& redirectResponse); - virtual void didSendData( - blink::WebURLLoader* loader, - unsigned long long bytesSent, - unsigned long long totalBytesToBeSent); - virtual void didReceiveResponse( - blink::WebURLLoader* loader, - const blink::WebURLResponse& response); - virtual void didDownloadData( - blink::WebURLLoader* loader, - int data_length, - int encodedDataLength); - virtual void didReceiveData( - blink::WebURLLoader* loader, - const char* data, - int data_length, - int encoded_data_length); - virtual void didReceiveCachedMetadata( - blink::WebURLLoader* loader, - const char* data, int dataLength); - virtual void didFinishLoading( - blink::WebURLLoader* loader, - double finishTime, - int64_t total_encoded_data_length); - virtual void didFail( - blink::WebURLLoader* loader, - const blink::WebURLError&); + void didSendData(blink::WebURLLoader* loader, + unsigned long long bytesSent, + unsigned long long totalBytesToBeSent) override; + void didReceiveResponse(blink::WebURLLoader* loader, + const blink::WebURLResponse& response) override; + void didDownloadData(blink::WebURLLoader* loader, + int data_length, + int encodedDataLength) override; + void didReceiveData(blink::WebURLLoader* loader, + const char* data, + int data_length, + int encoded_data_length) override; + void didReceiveCachedMetadata(blink::WebURLLoader* loader, + const char* data, + int dataLength) override; + void didFinishLoading(blink::WebURLLoader* loader, + double finishTime, + int64_t total_encoded_data_length) override; + void didFail(blink::WebURLLoader* loader, const blink::WebURLError&) override; void DidBecomeReady(Status status); diff --git a/content/renderer/media/android/webmediaplayer_android.h b/content/renderer/media/android/webmediaplayer_android.h index d9b7fe8..5b41f2c 100644 --- a/content/renderer/media/android/webmediaplayer_android.h +++ b/content/renderer/media/android/webmediaplayer_android.h @@ -97,44 +97,44 @@ class WebMediaPlayerAndroid : public blink::WebMediaPlayer, scoped_refptr<StreamTextureFactory> factory, int frame_id, const media::WebMediaPlayerParams& params); - virtual ~WebMediaPlayerAndroid(); + ~WebMediaPlayerAndroid() override; // blink::WebMediaPlayer implementation. - virtual bool supportsOverlayFullscreenVideo(); - virtual void enterFullscreen(); + bool supportsOverlayFullscreenVideo() override; + void enterFullscreen() override; // Resource loading. - virtual void load(LoadType load_type, - const blink::WebURL& url, - CORSMode cors_mode); + void load(LoadType load_type, + const blink::WebURL& url, + CORSMode cors_mode) override; // Playback controls. - virtual void play(); - virtual void pause(); - virtual void seek(double seconds); - virtual bool supportsSave() const; - virtual void setRate(double rate); - virtual void setVolume(double volume); - virtual void setSinkId(const blink::WebString& sink_id, - const blink::WebSecurityOrigin& security_origin, - blink::WebSetSinkIdCallbacks* web_callback); - virtual void requestRemotePlayback(); - virtual void requestRemotePlaybackControl(); - virtual blink::WebTimeRanges buffered() const; - virtual blink::WebTimeRanges seekable() const; + void play() override; + void pause() override; + void seek(double seconds) override; + bool supportsSave() const override; + void setRate(double rate) override; + void setVolume(double volume) override; + void setSinkId(const blink::WebString& sink_id, + const blink::WebSecurityOrigin& security_origin, + blink::WebSetSinkIdCallbacks* web_callback) override; + void requestRemotePlayback() override; + void requestRemotePlaybackControl() override; + blink::WebTimeRanges buffered() const override; + blink::WebTimeRanges seekable() const override; // Poster image, as defined in the <video> element. - virtual void setPoster(const blink::WebURL& poster) override; + void setPoster(const blink::WebURL& poster) override; // Methods for painting. // FIXME: This path "only works" on Android. It is a workaround for the // issue that Skia could not handle Android's GL_TEXTURE_EXTERNAL_OES texture // internally. It should be removed and replaced by the normal paint path. // https://code.google.com/p/skia/issues/detail?id=1189 - virtual void paint(blink::WebCanvas* canvas, - const blink::WebRect& rect, - unsigned char alpha, - SkXfermode::Mode mode); + void paint(blink::WebCanvas* canvas, + const blink::WebRect& rect, + unsigned char alpha, + SkXfermode::Mode mode) override; bool copyVideoTextureToPlatformTexture( blink::WebGraphicsContext3D* web_graphics_context, @@ -145,37 +145,37 @@ class WebMediaPlayerAndroid : public blink::WebMediaPlayer, bool flip_y) override; // True if the loaded media has a playable video/audio track. - virtual bool hasVideo() const; - virtual bool hasAudio() const; + bool hasVideo() const override; + bool hasAudio() const override; - virtual bool isRemote() const; + bool isRemote() const override; // Dimensions of the video. - virtual blink::WebSize naturalSize() const; + blink::WebSize naturalSize() const override; // Getters of playback state. - virtual bool paused() const; - virtual bool seeking() const; - virtual double duration() const; + bool paused() const override; + bool seeking() const override; + double duration() const override; virtual double timelineOffset() const; - virtual double currentTime() const; + double currentTime() const override; - virtual bool didLoadingProgress(); + bool didLoadingProgress() override; // Internal states of loading and network. - virtual blink::WebMediaPlayer::NetworkState networkState() const; - virtual blink::WebMediaPlayer::ReadyState readyState() const; + blink::WebMediaPlayer::NetworkState networkState() const override; + blink::WebMediaPlayer::ReadyState readyState() const override; - virtual bool hasSingleSecurityOrigin() const; - virtual bool didPassCORSAccessCheck() const; + bool hasSingleSecurityOrigin() const override; + bool didPassCORSAccessCheck() const override; - virtual double mediaTimeForTimeValue(double timeValue) const; + double mediaTimeForTimeValue(double timeValue) const override; // Provide statistics. - virtual unsigned decodedFrameCount() const; - virtual unsigned droppedFrameCount() const; - virtual unsigned audioDecodedByteCount() const; - virtual unsigned videoDecodedByteCount() const; + unsigned decodedFrameCount() const override; + unsigned droppedFrameCount() const override; + unsigned audioDecodedByteCount() const override; + unsigned videoDecodedByteCount() const override; // cc::VideoFrameProvider implementation. These methods are running on the // compositor thread. @@ -233,24 +233,22 @@ class WebMediaPlayerAndroid : public blink::WebMediaPlayer, const gfx::RectF GetBoundaryRectangle(); #endif // defined(VIDEO_HOLE) - virtual MediaKeyException generateKeyRequest( + MediaKeyException generateKeyRequest(const blink::WebString& key_system, + const unsigned char* init_data, + unsigned init_data_length) override; + MediaKeyException addKey(const blink::WebString& key_system, + const unsigned char* key, + unsigned key_length, + const unsigned char* init_data, + unsigned init_data_length, + const blink::WebString& session_id) override; + MediaKeyException cancelKeyRequest( const blink::WebString& key_system, - const unsigned char* init_data, - unsigned init_data_length); - virtual MediaKeyException addKey( - const blink::WebString& key_system, - const unsigned char* key, - unsigned key_length, - const unsigned char* init_data, - unsigned init_data_length, - const blink::WebString& session_id); - virtual MediaKeyException cancelKeyRequest( - const blink::WebString& key_system, - const blink::WebString& session_id); + const blink::WebString& session_id) override; - virtual void setContentDecryptionModule( + void setContentDecryptionModule( blink::WebContentDecryptionModule* cdm, - blink::WebContentDecryptionModuleResult result); + blink::WebContentDecryptionModuleResult result) override; void OnKeyAdded(const std::string& session_id); void OnKeyError(const std::string& session_id, diff --git a/content/renderer/media/android/webmediasession_android.h b/content/renderer/media/android/webmediasession_android.h index 8e31d1d3..576079f 100644 --- a/content/renderer/media/android/webmediasession_android.h +++ b/content/renderer/media/android/webmediasession_android.h @@ -16,7 +16,7 @@ class RendererMediaSessionManager; class CONTENT_EXPORT WebMediaSessionAndroid : public blink::WebMediaSession { public: WebMediaSessionAndroid(RendererMediaSessionManager* session_manager); - virtual ~WebMediaSessionAndroid() override; + ~WebMediaSessionAndroid() override; void activate(blink::WebMediaSessionActivateCallback*) override; void deactivate(blink::WebMediaSessionDeactivateCallback*) override; diff --git a/content/renderer/media/canvas_capture_handler.h b/content/renderer/media/canvas_capture_handler.h index a7d54d2..05e5bdc 100644 --- a/content/renderer/media/canvas_capture_handler.h +++ b/content/renderer/media/canvas_capture_handler.h @@ -41,7 +41,7 @@ class CONTENT_EXPORT CanvasCaptureHandler final blink::WebSize GetSourceSize() const { return size_; } private: - virtual ~CanvasCaptureHandler(); + ~CanvasCaptureHandler() override; void CreateNewFrame(const blink::WebSkImage& image); diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h index c357ff8..baed47f 100644 --- a/content/renderer/render_frame_impl.h +++ b/content/renderer/render_frame_impl.h @@ -432,7 +432,7 @@ class CONTENT_EXPORT RenderFrameImpl const blink::WebString& name) override; void didChangeSandboxFlags(blink::WebFrame* child_frame, blink::WebSandboxFlags flags) override; - virtual void didChangeFrameOwnerProperties( + void didChangeFrameOwnerProperties( blink::WebFrame* child_frame, const blink::WebFrameOwnerProperties& frame_owner_properties) override; void didMatchCSS( diff --git a/content/renderer/vr/vr_dispatcher.h b/content/renderer/vr/vr_dispatcher.h index 7e5d56b..1dc79f4 100644 --- a/content/renderer/vr/vr_dispatcher.h +++ b/content/renderer/vr/vr_dispatcher.h @@ -20,7 +20,7 @@ class ServiceRegistry; class VRDispatcher : NON_EXPORTED_BASE(public blink::WebVRClient) { public: explicit VRDispatcher(ServiceRegistry* service_registry); - ~VRDispatcher(); + ~VRDispatcher() override; // blink::WebVRClient implementation. void getDevices(blink::WebVRGetDevicesCallback* callback) override; diff --git a/content/renderer/wake_lock/wake_lock_dispatcher.h b/content/renderer/wake_lock/wake_lock_dispatcher.h index e36a3e0..70ce86a 100644 --- a/content/renderer/wake_lock/wake_lock_dispatcher.h +++ b/content/renderer/wake_lock/wake_lock_dispatcher.h @@ -21,7 +21,7 @@ class WakeLockDispatcher : public RenderFrameObserver, private: // WebWakeLockClient implementation. - virtual void requestKeepScreenAwake(bool keepScreenAwake); + void requestKeepScreenAwake(bool keepScreenAwake) override; WakeLockServicePtr wake_lock_service_; }; diff --git a/content/renderer/webscrollbarbehavior_impl_gtkoraura.h b/content/renderer/webscrollbarbehavior_impl_gtkoraura.h index 30ccb23..3b0eb61 100644 --- a/content/renderer/webscrollbarbehavior_impl_gtkoraura.h +++ b/content/renderer/webscrollbarbehavior_impl_gtkoraura.h @@ -11,13 +11,12 @@ namespace content { class WebScrollbarBehaviorImpl : public blink::WebScrollbarBehavior { public: - virtual bool shouldCenterOnThumb( - blink::WebScrollbarBehavior::Button mouseButton, - bool shiftKeyPressed, - bool altKeyPressed); - virtual bool shouldSnapBackToDragOrigin(const blink::WebPoint& eventPoint, - const blink::WebRect& scrollbarRect, - bool isHorizontal); + bool shouldCenterOnThumb(blink::WebScrollbarBehavior::Button mouseButton, + bool shiftKeyPressed, + bool altKeyPressed) override; + bool shouldSnapBackToDragOrigin(const blink::WebPoint& eventPoint, + const blink::WebRect& scrollbarRect, + bool isHorizontal) override; }; } // namespace content diff --git a/media/blink/multibuffer_data_source_unittest.cc b/media/blink/multibuffer_data_source_unittest.cc index 661840d..3890af9 100644 --- a/media/blink/multibuffer_data_source_unittest.cc +++ b/media/blink/multibuffer_data_source_unittest.cc @@ -47,7 +47,7 @@ class TestMultiBufferDataProvider : public ResourceMultiBufferDataProvider { : ResourceMultiBufferDataProvider(url_data, pos), loading_(false) { CHECK(test_data_providers.insert(this).second); } - ~TestMultiBufferDataProvider() { + ~TestMultiBufferDataProvider() override { CHECK_EQ(static_cast<size_t>(1), test_data_providers.erase(this)); } void Start() override { |