diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/GraphicsWrapper.as b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/GraphicsWrapper.as
index d8e73c7d77..423ebfc68a 100644
--- a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/GraphicsWrapper.as
+++ b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/GraphicsWrapper.as
@@ -252,6 +252,7 @@ package org.bigbluebutton.modules.videoconf.views
LOGGER.debug("[GraphicsWrapper:addVideoForHelper] streamName {0}", [streamName]);
var graphic:UserGraphicHolder = new UserGraphicHolder();
graphic.userId = userId;
+ graphic.streamName = streamName;
graphic.addEventListener(FlexEvent.CREATION_COMPLETE, function(event:FlexEvent):void {
graphic.loadVideo(_options, connection, streamName);
onChildAdd(event);
@@ -375,7 +376,7 @@ package org.bigbluebutton.modules.videoconf.views
for (var i:int = 0; i < numChildren; ++i) {
var item:UserGraphicHolder = getChildAt(i) as UserGraphicHolder;
- if (item.user && item.user.userID == userId && item.visibleComponent is UserVideo && item.video.streamName == streamName) {
+ if (item.userId == userId && item.streamName == streamName) {
camIndex = item.video.camIndex;
removeChildHelper(item);
break;
diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/UserGraphicHolder.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/UserGraphicHolder.mxml
index dd7a250d0d..d2fadcd009 100755
--- a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/UserGraphicHolder.mxml
+++ b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/UserGraphicHolder.mxml
@@ -62,6 +62,8 @@ with BigBlueButton; if not, see .
private var _dispatcher:Dispatcher = new Dispatcher();
private var _images:Images = new Images();
private var _user:BBBUser = null;
+ private var _streamName:String = "";
+ private var _userId:String = "";
private var _hideMuteBtnTimer:Timer;
@@ -75,6 +77,19 @@ with BigBlueButton; if not, see .
public function set userId(value:String):void {
_user = UsersUtil.getUser(value);
+ _userId = value;
+ }
+
+ public function set streamName(value:String):void {
+ _streamName = value;
+ }
+
+ public function get streamName():String {
+ return _streamName;
+ }
+
+ public function get userId():String {
+ return _userId;
}
public function loadAvatar(options:VideoConfOptions):void {
diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/UserVideo.as b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/UserVideo.as
index ab8e7fe6a2..316a7034a7 100644
--- a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/UserVideo.as
+++ b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/views/UserVideo.as
@@ -79,14 +79,16 @@ package org.bigbluebutton.modules.videoconf.views
}
private function startPublishing():void {
- _streamName = newStreamName();
- _shuttingDown = false;
+ if(!_shuttingDown){
+ _streamName = newStreamName();
+ _shuttingDown = false;
- var e:StartBroadcastEvent = new StartBroadcastEvent();
- e.stream = _streamName;
- e.camera = _video.getCamera();
- e.videoProfile = _videoProfile;
- _dispatcher.dispatchEvent(e);
+ var e:StartBroadcastEvent = new StartBroadcastEvent();
+ e.stream = _streamName;
+ e.camera = _video.getCamera();
+ e.videoProfile = _videoProfile;
+ _dispatcher.dispatchEvent(e);
+ }
}
public function shutdown():void {