diff --git a/src/main/java/io/github/dsheirer/audio/broadcast/StreamManager.java b/src/main/java/io/github/dsheirer/audio/broadcast/StreamManager.java
index e73071e0..39a27b9d 100644
--- a/src/main/java/io/github/dsheirer/audio/broadcast/StreamManager.java
+++ b/src/main/java/io/github/dsheirer/audio/broadcast/StreamManager.java
@@ -1,21 +1,23 @@
/*
- * ******************************************************************************
- * sdrtrunk
- * Copyright (C) 2014-2018 Dennis Sheirer
*
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
+ * * ******************************************************************************
+ * * Copyright (C) 2014-2019 Dennis Sheirer
+ * *
+ * * This program is free software: you can redistribute it and/or modify
+ * * it under the terms of the GNU General Public License as published by
+ * * the Free Software Foundation, either version 3 of the License, or
+ * * (at your option) any later version.
+ * *
+ * * This program is distributed in the hope that it will be useful,
+ * * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * * GNU General Public License for more details.
+ * *
+ * * You should have received a copy of the GNU General Public License
+ * * along with this program. If not, see
+ * * *****************************************************************************
*
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
*
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see
- * *****************************************************************************
*/
package io.github.dsheirer.audio.broadcast;
@@ -200,7 +202,16 @@ public class StreamManager implements Listener
{
StringBuilder sb = new StringBuilder();
sb.append(BroadcastModel.TEMPORARY_STREAM_FILE_SUFFIX);
- sb.append(sNextRecordingNumber.incrementAndGet()).append("_");
+
+ int recordingNumber = sNextRecordingNumber.incrementAndGet();
+
+ //Check for integer overflow and readjust negative value to 0
+ if(recordingNumber < 0)
+ {
+ sNextRecordingNumber.set(0);
+ recordingNumber = sNextRecordingNumber.incrementAndGet();
+ }
+ sb.append(recordingNumber).append("_");
sb.append(TimeStamp.getLongTimeStamp("_"));
sb.append(mBroadcastFormat.getFileExtension());
diff --git a/src/main/java/io/github/dsheirer/audio/squelch/SquelchStateEvent.java b/src/main/java/io/github/dsheirer/audio/squelch/SquelchStateEvent.java
index e96c6284..1320f8d8 100644
--- a/src/main/java/io/github/dsheirer/audio/squelch/SquelchStateEvent.java
+++ b/src/main/java/io/github/dsheirer/audio/squelch/SquelchStateEvent.java
@@ -69,4 +69,11 @@ public class SquelchStateEvent
{
return new SquelchStateEvent(squelchState, timeslot);
}
+
+ public String toString()
+ {
+ StringBuilder sb = new StringBuilder();
+ sb.append("Squelch Event - State:").append(mSquelchState).append(" Timeslot:").append(mTimeslot);
+ return sb.toString();
+ }
}
diff --git a/src/main/java/io/github/dsheirer/module/decode/p25/audio/P25P2AudioModule.java b/src/main/java/io/github/dsheirer/module/decode/p25/audio/P25P2AudioModule.java
index a55efe32..ce70679a 100644
--- a/src/main/java/io/github/dsheirer/module/decode/p25/audio/P25P2AudioModule.java
+++ b/src/main/java/io/github/dsheirer/module/decode/p25/audio/P25P2AudioModule.java
@@ -60,6 +60,7 @@ public class P25P2AudioModule extends AmbeAudioModule implements IdentifierUpdat
private static final String METADATA_TYPE_CALL_PROGRESS = "CALL PROGRESS";
private Listener mIdentifierUpdateNotificationListener;
+ private SquelchStateListener mSquelchStateListener = new SquelchStateListener();
private MetadataProcessor mDtmfMetadataProcessor;
private MetadataProcessor mKnoxMetadataProcessor;
private MetadataProcessor mToneMetadataProcessor;
@@ -84,7 +85,7 @@ public class P25P2AudioModule extends AmbeAudioModule implements IdentifierUpdat
@Override
public Listener getSquelchStateListener()
{
- return null;
+ return mSquelchStateListener;
}
@Override