From 5291ff419318adbb4ee2f4c2cb363d1963fde33a Mon Sep 17 00:00:00 2001 From: Jenn Magder Date: Thu, 18 Nov 2021 21:06:44 -0800 Subject: [PATCH] Add 'explicit' to Android embedder constructors (flutter/engine#29830) --- engine/src/flutter/fml/platform/android/scoped_java_ref.h | 1 + .../flutter/shell/platform/android/android_image_generator.h | 2 +- .../src/flutter/shell/platform/android/apk_asset_provider.cc | 2 +- engine/src/flutter/shell/platform/android/flutter_main.h | 2 +- .../shell/platform/android/platform_message_handler_android.h | 2 +- .../shell/platform/android/platform_view_android_jni_impl.h | 3 ++- .../src/flutter/shell/platform/android/vsync_waiter_android.h | 2 +- 7 files changed, 8 insertions(+), 6 deletions(-) diff --git a/engine/src/flutter/fml/platform/android/scoped_java_ref.h b/engine/src/flutter/fml/platform/android/scoped_java_ref.h index 2f0bb647a7d..d1f4c89e1f7 100644 --- a/engine/src/flutter/fml/platform/android/scoped_java_ref.h +++ b/engine/src/flutter/fml/platform/android/scoped_java_ref.h @@ -164,6 +164,7 @@ class ScopedJavaGlobalRef : public JavaRef { public: ScopedJavaGlobalRef() {} + // NOLINTNEXTLINE(google-explicit-constructor) explicit ScopedJavaGlobalRef(const ScopedJavaGlobalRef& other) { this->Reset(other); } diff --git a/engine/src/flutter/shell/platform/android/android_image_generator.h b/engine/src/flutter/shell/platform/android/android_image_generator.h index ddfeae9c7fd..4ddd6b95cc7 100644 --- a/engine/src/flutter/shell/platform/android/android_image_generator.h +++ b/engine/src/flutter/shell/platform/android/android_image_generator.h @@ -16,7 +16,7 @@ namespace flutter { class AndroidImageGenerator : public ImageGenerator { private: - AndroidImageGenerator(sk_sp buffer); + explicit AndroidImageGenerator(sk_sp buffer); public: ~AndroidImageGenerator(); diff --git a/engine/src/flutter/shell/platform/android/apk_asset_provider.cc b/engine/src/flutter/shell/platform/android/apk_asset_provider.cc index e5c266edab8..79372684f41 100644 --- a/engine/src/flutter/shell/platform/android/apk_asset_provider.cc +++ b/engine/src/flutter/shell/platform/android/apk_asset_provider.cc @@ -38,7 +38,7 @@ AssetResolver::AssetResolverType APKAssetProvider::GetType() const { class APKAssetMapping : public fml::Mapping { public: - APKAssetMapping(AAsset* asset) : asset_(asset) {} + explicit APKAssetMapping(AAsset* asset) : asset_(asset) {} ~APKAssetMapping() override { AAsset_close(asset_); } diff --git a/engine/src/flutter/shell/platform/android/flutter_main.h b/engine/src/flutter/shell/platform/android/flutter_main.h index 171800b3ec5..32a1efe806a 100644 --- a/engine/src/flutter/shell/platform/android/flutter_main.h +++ b/engine/src/flutter/shell/platform/android/flutter_main.h @@ -27,7 +27,7 @@ class FlutterMain { const flutter::Settings settings_; DartServiceIsolate::CallbackHandle observatory_uri_callback_; - FlutterMain(flutter::Settings settings); + explicit FlutterMain(flutter::Settings settings); static void Init(JNIEnv* env, jclass clazz, diff --git a/engine/src/flutter/shell/platform/android/platform_message_handler_android.h b/engine/src/flutter/shell/platform/android/platform_message_handler_android.h index dc36013db69..ef132c7a782 100644 --- a/engine/src/flutter/shell/platform/android/platform_message_handler_android.h +++ b/engine/src/flutter/shell/platform/android/platform_message_handler_android.h @@ -17,7 +17,7 @@ namespace flutter { class PlatformMessageHandlerAndroid : public PlatformMessageHandler { public: - PlatformMessageHandlerAndroid( + explicit PlatformMessageHandlerAndroid( const std::shared_ptr& jni_facade); void HandlePlatformMessage(std::unique_ptr message) override; void InvokePlatformMessageResponseCallback( diff --git a/engine/src/flutter/shell/platform/android/platform_view_android_jni_impl.h b/engine/src/flutter/shell/platform/android/platform_view_android_jni_impl.h index 624fa00a275..4f2102a090d 100644 --- a/engine/src/flutter/shell/platform/android/platform_view_android_jni_impl.h +++ b/engine/src/flutter/shell/platform/android/platform_view_android_jni_impl.h @@ -16,7 +16,8 @@ namespace flutter { /// class PlatformViewAndroidJNIImpl final : public PlatformViewAndroidJNI { public: - PlatformViewAndroidJNIImpl(fml::jni::JavaObjectWeakGlobalRef java_object); + explicit PlatformViewAndroidJNIImpl( + fml::jni::JavaObjectWeakGlobalRef java_object); ~PlatformViewAndroidJNIImpl() override; diff --git a/engine/src/flutter/shell/platform/android/vsync_waiter_android.h b/engine/src/flutter/shell/platform/android/vsync_waiter_android.h index 03bc415e3ae..841832f503e 100644 --- a/engine/src/flutter/shell/platform/android/vsync_waiter_android.h +++ b/engine/src/flutter/shell/platform/android/vsync_waiter_android.h @@ -18,7 +18,7 @@ class VsyncWaiterAndroid final : public VsyncWaiter { public: static bool Register(JNIEnv* env); - VsyncWaiterAndroid(flutter::TaskRunners task_runners); + explicit VsyncWaiterAndroid(flutter::TaskRunners task_runners); ~VsyncWaiterAndroid() override;