From 41eab75d736f357e8ade6559dc74d59aec9b7af9 Mon Sep 17 00:00:00 2001
From: kkostiuk <kateryna.kostiuk@savoirfairelinux.com>
Date: Wed, 15 Dec 2021 08:56:40 -0500
Subject: [PATCH] video: fix screen sharing on macOS

Because media encoder flush() involves encoding we should change
initialized flag after calling flush(), otherwise, it could lead to
new stream initializing.

https://git.jami.net/savoirfairelinux/jami-client-macos/-/issues/299

Change-Id: I88d5648a6f252bd78776f505f891f09a4e5b12e1
---
 src/media/media_encoder.cpp | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/media/media_encoder.cpp b/src/media/media_encoder.cpp
index 816ee94779..0e120e0686 100644
--- a/src/media/media_encoder.cpp
+++ b/src/media/media_encoder.cpp
@@ -1340,13 +1340,12 @@ MediaEncoder::getScaledSWFrame(const VideoFrame& input)
 void
 MediaEncoder::resetStreams(int width, int height)
 {
-    // Only called by VideoSender!
-    initialized_ = false;
     videoOpts_.width = width;
     videoOpts_.height = height;
 
     try {
         flush();
+        initialized_ = false;
         if (outputCtx_) {
             for (auto encoderCtx : encoders_) {
                 if (encoderCtx) {
-- 
GitLab