From 0cd645de074223ce6b4441f0e43ecf90ef48c1f7 Mon Sep 17 00:00:00 2001 From: Ingo Bauersachs <ingo@jitsi.org> Date: Sat, 8 Mar 2014 17:50:14 +0100 Subject: [PATCH] Fix some possible NPEs --- src/org/jitsi/impl/neomedia/MediaStreamImpl.java | 9 ++++++--- .../jitsi/impl/neomedia/RTPConnectorUDPOutputStream.java | 3 +++ src/org/jitsi/impl/neomedia/device/MediaDeviceImpl.java | 7 ++++++- .../jitsi/impl/neomedia/notify/AudioSystemClipImpl.java | 5 +++++ 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/src/org/jitsi/impl/neomedia/MediaStreamImpl.java b/src/org/jitsi/impl/neomedia/MediaStreamImpl.java index fa20e98a..238042ac 100644 --- a/src/org/jitsi/impl/neomedia/MediaStreamImpl.java +++ b/src/org/jitsi/impl/neomedia/MediaStreamImpl.java @@ -2518,9 +2518,12 @@ else if (ev instanceof RemotePayloadChangeEvent) // and starting again the DataSource try { - transcodingDataSource.disconnect(); - transcodingDataSource.connect(); - transcodingDataSource.start(); + if (transcodingDataSource != null) + { + transcodingDataSource.disconnect(); + transcodingDataSource.connect(); + transcodingDataSource.start(); + } // as output streams of the DataSource // are recreated we need to update diff --git a/src/org/jitsi/impl/neomedia/RTPConnectorUDPOutputStream.java b/src/org/jitsi/impl/neomedia/RTPConnectorUDPOutputStream.java index 415ccfab..690ab63d 100644 --- a/src/org/jitsi/impl/neomedia/RTPConnectorUDPOutputStream.java +++ b/src/org/jitsi/impl/neomedia/RTPConnectorUDPOutputStream.java @@ -69,6 +69,9 @@ protected void sendToTarget(RawPacket packet, InetSocketAddress target) @Override protected void doLogPacket(RawPacket packet, InetSocketAddress target) { + if (socket == null || packet == null || target == null) + return; + // Do not log the packet if this one has been processed (and already // logged) by the ice4j stack. if(socket instanceof MultiplexingDatagramSocket) diff --git a/src/org/jitsi/impl/neomedia/device/MediaDeviceImpl.java b/src/org/jitsi/impl/neomedia/device/MediaDeviceImpl.java index 05ffce29..e3ac6a6e 100644 --- a/src/org/jitsi/impl/neomedia/device/MediaDeviceImpl.java +++ b/src/org/jitsi/impl/neomedia/device/MediaDeviceImpl.java @@ -139,7 +139,12 @@ private static String toString(CaptureDevice captureDevice) CaptureDeviceInfo captureDeviceInfo = captureDevice.getCaptureDeviceInfo(); - MediaLocator mediaLocator = captureDeviceInfo.getLocator(); + + MediaLocator mediaLocator = null; + if (captureDeviceInfo != null) + { + mediaLocator = captureDeviceInfo.getLocator(); + } str.append((mediaLocator == null) ? captureDeviceInfo : mediaLocator); return str.toString(); diff --git a/src/org/jitsi/impl/neomedia/notify/AudioSystemClipImpl.java b/src/org/jitsi/impl/neomedia/notify/AudioSystemClipImpl.java index bafd820c..19780180 100644 --- a/src/org/jitsi/impl/neomedia/notify/AudioSystemClipImpl.java +++ b/src/org/jitsi/impl/neomedia/notify/AudioSystemClipImpl.java @@ -121,6 +121,11 @@ protected void exitRunOnceInPlayThread() */ protected boolean runOnceInPlayThread() { + if (renderer == null || buffer == null) + { + return false; + } + InputStream audioStream = null; try -- GitLab