From 1c6f91f1017434c2a5fed3181aa11afce32dfa5f Mon Sep 17 00:00:00 2001 From: Denny Sheirer Date: Fri, 20 Mar 2020 15:15:53 +0000 Subject: [PATCH] Resolves #682 NPE when logging channel events with no alias list specified. (#683) Co-authored-by: Denny --- .../module/log/DecodeEventLogger.java | 21 ++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/src/main/java/io/github/dsheirer/module/log/DecodeEventLogger.java b/src/main/java/io/github/dsheirer/module/log/DecodeEventLogger.java index c5fb54f1..c1f630c8 100644 --- a/src/main/java/io/github/dsheirer/module/log/DecodeEventLogger.java +++ b/src/main/java/io/github/dsheirer/module/log/DecodeEventLogger.java @@ -114,11 +114,20 @@ public class DecodeEventLogger extends EventLogger implements IDecodeEventListen if(toIdentifiers != null && !toIdentifiers.isEmpty()) { - Identifier identifier = event.getIdentifierCollection().getIdentifier(IdentifierClass.CONFIGURATION,Form.ALIAS_LIST,Role.ANY); + Identifier identifier = event.getIdentifierCollection() + .getIdentifier(IdentifierClass.CONFIGURATION,Form.ALIAS_LIST,Role.ANY); mAliasList = mAliasModel.getAliasList((AliasListConfigurationIdentifier)identifier); - String mystring = (!mAliasList.getAliases(toIdentifiers.get(0)).isEmpty()) ? mAliasList.getAliases(toIdentifiers.get(0)).get(0).toString() : ""; - sb.append(",\"").append(mystring).append(" (").append(toIdentifiers.get(0)).append(")\""); + if(mAliasList != null) + { + String mystring = (!mAliasList.getAliases(toIdentifiers.get(0)).isEmpty()) ? + mAliasList.getAliases(toIdentifiers.get(0)).get(0).toString() : ""; + sb.append(",\"").append(mystring).append(" (").append(toIdentifiers.get(0)).append(")\""); + } + else + { + sb.append(",\"\""); + } } else { @@ -129,11 +138,13 @@ public class DecodeEventLogger extends EventLogger implements IDecodeEventListen sb.append(",\"").append(descriptor != null ? descriptor : "").append("\""); - Identifier frequency = event.getIdentifierCollection().getIdentifier(IdentifierClass.CONFIGURATION, Form.CHANNEL_FREQUENCY, Role.ANY); + Identifier frequency = event.getIdentifierCollection() + .getIdentifier(IdentifierClass.CONFIGURATION, Form.CHANNEL_FREQUENCY, Role.ANY); if(frequency instanceof FrequencyConfigurationIdentifier) { - sb.append(",\"").append(mFrequencyFormat.format(((FrequencyConfigurationIdentifier)frequency).getValue() / 1e6d)).append("\""); + sb.append(",\"").append(mFrequencyFormat + .format(((FrequencyConfigurationIdentifier)frequency).getValue() / 1e6d)).append("\""); } else {