diff options
Diffstat (limited to 'Software/Visual_Studio/Tango.RemoteDesktop/ScreenCaptureEngine.cs')
| -rw-r--r-- | Software/Visual_Studio/Tango.RemoteDesktop/ScreenCaptureEngine.cs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Software/Visual_Studio/Tango.RemoteDesktop/ScreenCaptureEngine.cs b/Software/Visual_Studio/Tango.RemoteDesktop/ScreenCaptureEngine.cs index 81efb6a30..8920b983b 100644 --- a/Software/Visual_Studio/Tango.RemoteDesktop/ScreenCaptureEngine.cs +++ b/Software/Visual_Studio/Tango.RemoteDesktop/ScreenCaptureEngine.cs @@ -111,7 +111,6 @@ namespace Tango.RemoteDesktop if (IsStarted) { IsStarted = false; - _previousBitmap?.Dispose(); } } @@ -180,15 +179,20 @@ namespace Tango.RemoteDesktop catch (Exception ex) { Debug.WriteLine($"Error in screen capture engine: {ex.Message}"); + _previousBitmap = null; } int delay = Math.Max(5, (1000 / FrameRate) - (int)watch.ElapsedMilliseconds); Thread.Sleep(delay); } + + _previousBitmap = null; } private void OnFrameReceived(Bitmap currentBitmap, TFrame diffFrame, uint differenceCount) { + if (!IsStarted) return; + FrameReceived?.Invoke(this, new ScreenCaptureFrameReceivedEventArgs<TFrame>() { Frame = new ScreenCaptureFrame<TFrame>(currentBitmap, diffFrame) |
