diff --git a/bigbluebutton-html5/imports/ui/components/video-dock/component.jsx b/bigbluebutton-html5/imports/ui/components/video-dock/component.jsx
index 67d5af0b07fa00734d0f7fde787a63d021625c7c..be743709b97c554b9ae26414a7680b3f5f4f99e5 100755
--- a/bigbluebutton-html5/imports/ui/components/video-dock/component.jsx
+++ b/bigbluebutton-html5/imports/ui/components/video-dock/component.jsx
@@ -504,7 +504,9 @@ class VideoDock extends Component {
 
   unshareWebcam() {
     log('info', 'Unsharing webcam');
-    VideoService.sendUserUnshareWebcam(this.props.userId);
+    const { userId } = this.props;
+    VideoService.sendUserUnshareWebcam(userId);
+    this.stop(userId);
   }
 
   startResponse(message) {
@@ -587,8 +589,8 @@ class VideoDock extends Component {
     const { intl, userId } = this.props;
 
     if (message.cameraId == userId) {
-      this.unshareWebcam();
       this.notifyError(intl.formatMessage(intlMessages.sharingError));
+      this.unshareWebcam();
     } else {
       this.stop(message.cameraId);
     }