[WebRTC][HW Encoder] Virtual destructors 80/294580/1
authorMichal Jurkiewicz <m.jurkiewicz@samsung.com>
Tue, 20 Jun 2023 18:13:43 +0000 (20:13 +0200)
committerj.gajownik2 <j.gajownik2@samsung.com>
Wed, 21 Jun 2023 09:48:49 +0000 (11:48 +0200)
Mark destructors of TizenVideoEncoder base abstract classes as virtual
to ensure proper destruction when TizenVideoEncoder class is being held
by pointer to one of its base classes.

Bug: https://cam.sprc.samsung.pl/browse/VDGAME-258
Change-Id: Ide979476ade6c5228debea1c954f2ea7de778e7f
Signed-off-by: Michal Jurkiewicz <m.jurkiewicz@samsung.com>
content/renderer/media/suspend_resume_manager.h
tizen_src/chromium_impl/third_party/blink/renderer/platform/peerconnection/rtc_video_encoder_tizen_adapter_client.h
tizen_src/chromium_impl/third_party/blink/renderer/platform/peerconnection/tizen_video_encoder.h
tizen_src/chromium_impl/third_party/blink/renderer/platform/peerconnection/tizen_video_encoder_client.h
tizen_src/chromium_impl/third_party/blink/renderer/platform/peerconnection/tizen_video_encoder_facade_client.h

index 96a7a932a3f35a5560b9d64f8018cd33905fbf86..d69bb926350e42f1e664bdea70d3a0775fc8eda3 100644 (file)
@@ -21,6 +21,8 @@ class SuspendResumeObserver {
   // Method called when application is being resumed
   virtual void OnResume() = 0;
 
+  virtual ~SuspendResumeObserver() = default;
+
  protected:
   SuspendResumeObserver() = default;
 };
index bf98de5bc28be3dd1ba009e7680e58ab8aac3ee2..fc94e2a76fa3ead8a1c5905ea8eefbc332d3ee22 100644 (file)
@@ -45,6 +45,8 @@ class RTCVideoEncoderTizenAdapterClient {
   // bitrate value must be provided in `bps` - bits per second
   virtual void UpdateStreamBitrate(uint32_t stream_id, uint32_t bitrate) = 0;
 
+  virtual ~RTCVideoEncoderTizenAdapterClient() = default;
+
  protected:
   RTCVideoEncoderTizenAdapterClient() = default;
 };
index 9890e0b8c9489a8ed88623c061d85038a8a58808..caab9f676c11bd001c1065298e9c2227d726ada8 100644 (file)
@@ -45,7 +45,7 @@ class TizenVideoEncoder
   static std::shared_ptr<TizenVideoEncoder> Create(
       scoped_refptr<base::SingleThreadTaskRunner> encoder_task_runner);
 
-  virtual ~TizenVideoEncoder();
+  ~TizenVideoEncoder() override;
 
   // RTCVideoEncoderTizenAdapterClient
   void RegisterClient(TizenVideoEncoderClient*) override;
index 9381f1c2fbecae7e0f777d398f459a5adfaf285f..cab8b0aabcd77c7c5cfb8dcc86583fc176afb16b 100644 (file)
@@ -27,6 +27,8 @@ class TizenVideoEncoderClient {
   // error and it is not possible to continue encoding.
   virtual void OnError() = 0;
 
+  virtual ~TizenVideoEncoderClient() = default;
+
  protected:
   TizenVideoEncoderClient() = default;
 };
index 63d6fdc264c6d8b3324ff8ee0fd50a3b7e3bfa86..1e021978419b8ab9c59506534b19dbff461ee572 100644 (file)
@@ -30,6 +30,8 @@ class TizenVideoEncoderFacadeClient {
   // and it is not possible to continue encoding.
   virtual void OnErrorOnProxyThread() = 0;
 
+  virtual ~TizenVideoEncoderFacadeClient() = default;
+
  protected:
   TizenVideoEncoderFacadeClient() = default;
 };