Commit 5aced98ce38ea479f23e7da9b39a09dfeff1c92c

Authored by Valerii Sosliuk
Committed by Andrew Shvayka
1 parent e375124b

Fix NPE in Netty-mqtt client (#1398)

* Fix NPE in netty-mqtt client on puback

* Fix gateway mqtt extension configuration - filter is not required
@@ -222,6 +222,9 @@ final class MqttChannelHandler extends SimpleChannelInboundHandler<MqttMessage> @@ -222,6 +222,9 @@ final class MqttChannelHandler extends SimpleChannelInboundHandler<MqttMessage>
222 222
223 private void handlePuback(MqttPubAckMessage message) { 223 private void handlePuback(MqttPubAckMessage message) {
224 MqttPendingPublish pendingPublish = this.client.getPendingPublishes().get(message.variableHeader().messageId()); 224 MqttPendingPublish pendingPublish = this.client.getPendingPublishes().get(message.variableHeader().messageId());
  225 + if (pendingPublish == null) {
  226 + return;
  227 + }
225 pendingPublish.getFuture().setSuccess(null); 228 pendingPublish.getFuture().setSuccess(null);
226 pendingPublish.onPubackReceived(); 229 pendingPublish.onPubackReceived();
227 this.client.getPendingPublishes().remove(message.variableHeader().messageId()); 230 this.client.getPendingPublishes().remove(message.variableHeader().messageId());
@@ -261,7 +261,7 @@ @@ -261,7 +261,7 @@
261 </md-input-container> 261 </md-input-container>
262 <md-input-container flex="60" class="md-block" md-is-error="theForm['mqttFilterExpression' + brokerIndex + mapIndex].$touched && theForm['mqttFilterExpression' + brokerIndex + mapIndex].$invalid"> 262 <md-input-container flex="60" class="md-block" md-is-error="theForm['mqttFilterExpression' + brokerIndex + mapIndex].$touched && theForm['mqttFilterExpression' + brokerIndex + mapIndex].$invalid">
263 <label translate>extension.filter-expression</label> 263 <label translate>extension.filter-expression</label>
264 - <input required name="mqttFilterExpression{{brokerIndex}}{{mapIndex}}" ng-model="map.converter.filterExpression"> 264 + <input name="mqttFilterExpression{{brokerIndex}}{{mapIndex}}" ng-model="map.converter.filterExpression">
265 <div ng-messages="theForm['mqttFilterExpression' + brokerIndex + mapIndex].$error"> 265 <div ng-messages="theForm['mqttFilterExpression' + brokerIndex + mapIndex].$error">
266 <div translate ng-message="required">extension.field-required</div> 266 <div translate ng-message="required">extension.field-required</div>
267 </div> 267 </div>