This is an automated email from the ASF dual-hosted git repository. solomax pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/openmeetings.git
The following commit(s) were added to refs/heads/master by this push: new b200a54 [OPENMEETINGS-1836] more NPEs are fixed b200a54 is described below commit b200a54fcb1eae62cd7be89e11b32593878c7ade Author: Maxim Solodovnik <solomax...@gmail.com> AuthorDate: Wed Mar 7 21:31:08 2018 +0700 [OPENMEETINGS-1836] more NPEs are fixed --- .../java/org/apache/openmeetings/web/room/RoomPanel.java | 16 +++++++--------- .../openmeetings/web/room/sidebar/RoomSidebar.java | 2 +- .../org/apache/openmeetings/web/room/wb/WbPanel.java | 3 +++ 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java index 1ce716a..23ac29c 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java @@ -393,7 +393,8 @@ public class RoomPanel extends BasePanel { @Override public void onEvent(IEvent<?> event) { - if (event.getPayload() instanceof WebSocketPushPayload) { + Client _c = getClient(); + if (_c != null && event.getPayload() instanceof WebSocketPushPayload) { WebSocketPushPayload wsEvent = (WebSocketPushPayload) event.getPayload(); if (wsEvent.getMessage() instanceof RoomMessage) { RoomMessage m = (RoomMessage)wsEvent.getMessage(); @@ -471,7 +472,6 @@ public class RoomPanel extends BasePanel { log.error("Not existing user in rightUpdated {} !!!!", uid); return; } - Client _c = getClient(); boolean self = _c.getUid().equals(c.getUid()); handler.appendJavaScript(String.format("VideoManager.update(%s);" , c.streamJson(_c.getSid(), self, getBean(StreamClientManager.class)).toString(new NullStringer()) @@ -495,7 +495,6 @@ public class RoomPanel extends BasePanel { log.error("Not existing user in newStream {} !!!!", uid); return; } - Client _c = getClient(); boolean self = _c.getSid().equals(c.getSid()); StreamClientManager mgr = getBean(StreamClientManager.class); if (!self || Client.Type.room != mgr.get(uid).getType()) { // stream from others or self external video @@ -515,7 +514,6 @@ public class RoomPanel extends BasePanel { Client c = cm.getBySid(obj.getString("sid")); if (c != null) { //c == null means client exits the room - Client _c = getClient(); if (_c.getUid().equals(c.getUid())) { cm.update(c.removeStream(uid)); } @@ -568,18 +566,18 @@ public class RoomPanel extends BasePanel { sidebar.removeActivity(((TextRoomMessage)m).getText(), handler); break; case haveQuestion: - if (getClient().hasRight(Room.Right.moderator) || getUserId().equals(m.getUserId())) { + if (_c.hasRight(Room.Right.moderator) || getUserId().equals(m.getUserId())) { sidebar.addActivity(new Activity((TextRoomMessage)m, Activity.Type.haveQuestion), handler); } break; case kick: { String uid = ((TextRoomMessage)m).getText(); - if (getClient().getUid().equals(uid)) { + if (_c.getUid().equals(uid)) { handler.add(room.setVisible(false)); getMainPanel().getChat().toggle(handler, false); clientKicked.open(handler); - cm.exitRoom(getClient()); + cm.exitRoom(_c); } } break; @@ -591,7 +589,7 @@ public class RoomPanel extends BasePanel { log.error("Not existing user in audioActivity {} !!!!", obj); return; } - if (!getClient().getUid().equals(c.getUid())) { + if (!_c.getUid().equals(c.getUid())) { handler.appendJavaScript(String.format("if (typeof(VideoManager) !== 'undefined') {VideoManager.micActivity('%s', %s);}", c.getUid(), obj.getBoolean("active"))); } } @@ -604,7 +602,7 @@ public class RoomPanel extends BasePanel { log.error("Not existing user in mute {} !!!!", obj); return; } - if (!getClient().getUid().equals(c.getUid())) { + if (!_c.getUid().equals(c.getUid())) { handler.appendJavaScript(String.format("if (typeof(VideoManager) !== 'undefined') {VideoManager.mute('%s', %s);}", obj.getString("uid"), obj.getBoolean("mute"))); } } diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java index 5ef1033..4f0500e 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java @@ -294,7 +294,7 @@ public class RoomSidebar extends Panel { } public void update(IPartialPageRequestHandler handler) { - if (room.getRoom() == null) { + if (room.getRoom() == null || room.getClient() != null) { return; } updateShowFiles(handler); diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java index 0265c5d..02167a0 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java @@ -200,6 +200,9 @@ public class WbPanel extends AbstractWbPanel { @Override protected void processWbAction(WbAction a, JSONObject obj, AjaxRequestTarget target) throws IOException { Client c = rp.getClient(); + if (c == null) { + return; + } WhiteboardManager wbm = getBean(WhiteboardManager.class); switch (a) { case createObj: -- To stop receiving notification emails like this one, please contact solo...@apache.org.