Skip to content

Commit aa958f1

Browse files
author
Kshitij Kansal
committed
Coverity Issue: Null pointer dereferecing fixed
1 parent b400608 commit aa958f1

File tree

1 file changed

+13
-10
lines changed

1 file changed

+13
-10
lines changed

server/src/com/cloud/api/ApiResponseHelper.java

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030

3131
import javax.inject.Inject;
3232

33+
import org.apache.commons.collections.CollectionUtils;
3334
import org.apache.log4j.Logger;
3435

3536
import org.apache.cloudstack.acl.ControlledEntity;
@@ -505,7 +506,7 @@ public SnapshotResponse createSnapshotResponse(Snapshot snapshot) {
505506
List<ResourceTagResponse> tagResponses = new ArrayList<ResourceTagResponse>();
506507
for (ResourceTag tag : tags) {
507508
ResourceTagResponse tagResponse = createResourceTagResponse(tag, true);
508-
tagResponses.add(tagResponse);
509+
CollectionUtils.addIgnoreNull(tagResponses,tagResponse);
509510
}
510511
snapshotResponse.setTags(tagResponses);
511512

@@ -790,7 +791,7 @@ public IPAddressResponse createIPAddressResponse(ResponseView view, IpAddress ip
790791
List<ResourceTagResponse> tagResponses = new ArrayList<ResourceTagResponse>();
791792
for (ResourceTag tag : tags) {
792793
ResourceTagResponse tagResponse = createResourceTagResponse(tag, true);
793-
tagResponses.add(tagResponse);
794+
CollectionUtils.addIgnoreNull(tagResponses,tagResponse);
794795
}
795796
ipResponse.setTags(tagResponses);
796797

@@ -832,7 +833,7 @@ public LoadBalancerResponse createLoadBalancerResponse(LoadBalancer loadBalancer
832833
List<ResourceTagResponse> tagResponses = new ArrayList<ResourceTagResponse>();
833834
for (ResourceTag tag : tags) {
834835
ResourceTagResponse tagResponse = createResourceTagResponse(tag, true);
835-
tagResponses.add(tagResponse);
836+
CollectionUtils.addIgnoreNull(tagResponses,tagResponse);
836837
}
837838
lbResponse.setTags(tagResponses);
838839

@@ -1119,7 +1120,7 @@ public FirewallRuleResponse createPortForwardingRuleResponse(PortForwardingRule
11191120
List<ResourceTagResponse> tagResponses = new ArrayList<ResourceTagResponse>();
11201121
for (ResourceTag tag : tags) {
11211122
ResourceTagResponse tagResponse = createResourceTagResponse(tag, true);
1122-
tagResponses.add(tagResponse);
1123+
CollectionUtils.addIgnoreNull(tagResponses,tagResponse);
11231124
}
11241125
response.setTags(tagResponses);
11251126

@@ -2072,7 +2073,7 @@ public NetworkResponse createNetworkResponse(ResponseView view, Network network)
20722073
List<ResourceTagResponse> tagResponses = new ArrayList<ResourceTagResponse>();
20732074
for (ResourceTag tag : tags) {
20742075
ResourceTagResponse tagResponse = createResourceTagResponse(tag, true);
2075-
tagResponses.add(tagResponse);
2076+
CollectionUtils.addIgnoreNull(tagResponses,tagResponse);
20762077
}
20772078
response.setTags(tagResponses);
20782079

@@ -2158,7 +2159,7 @@ public FirewallResponse createFirewallResponse(FirewallRule fwRule) {
21582159
List<ResourceTagResponse> tagResponses = new ArrayList<ResourceTagResponse>();
21592160
for (ResourceTag tag : tags) {
21602161
ResourceTagResponse tagResponse = createResourceTagResponse(tag, true);
2161-
tagResponses.add(tagResponse);
2162+
CollectionUtils.addIgnoreNull(tagResponses,tagResponse);
21622163
}
21632164
response.setTags(tagResponses);
21642165

@@ -2209,7 +2210,7 @@ public NetworkACLItemResponse createNetworkACLItemResponse(NetworkACLItem aclIte
22092210
List<ResourceTagResponse> tagResponses = new ArrayList<ResourceTagResponse>();
22102211
for (ResourceTag tag : tags) {
22112212
ResourceTagResponse tagResponse = createResourceTagResponse(tag, true);
2212-
tagResponses.add(tagResponse);
2213+
CollectionUtils.addIgnoreNull(tagResponses,tagResponse);
22132214
}
22142215
response.setTags(tagResponses);
22152216

@@ -2645,6 +2646,8 @@ public RegionResponse createRegionResponse(Region region) {
26452646
@Override
26462647
public ResourceTagResponse createResourceTagResponse(ResourceTag resourceTag, boolean keyValueOnly) {
26472648
ResourceTagJoinVO rto = ApiDBUtils.newResourceTagView(resourceTag);
2649+
if(rto == null)
2650+
return null;
26482651
return ApiDBUtils.newResourceTagResponse(rto, keyValueOnly);
26492652
}
26502653

@@ -2753,7 +2756,7 @@ public VpcResponse createVpcResponse(ResponseView view, Vpc vpc) {
27532756
List<ResourceTagResponse> tagResponses = new ArrayList<ResourceTagResponse>();
27542757
for (ResourceTag tag : tags) {
27552758
ResourceTagResponse tagResponse = createResourceTagResponse(tag, true);
2756-
tagResponses.add(tagResponse);
2759+
CollectionUtils.addIgnoreNull(tagResponses,tagResponse);
27572760
}
27582761
response.setTags(tagResponses);
27592762
response.setObjectName("vpc");
@@ -2944,7 +2947,7 @@ public StaticRouteResponse createStaticRouteResponse(StaticRoute result) {
29442947
List<ResourceTagResponse> tagResponses = new ArrayList<ResourceTagResponse>();
29452948
for (ResourceTag tag : tags) {
29462949
ResourceTagResponse tagResponse = createResourceTagResponse(tag, true);
2947-
tagResponses.add(tagResponse);
2950+
CollectionUtils.addIgnoreNull(tagResponses,tagResponse);
29482951
}
29492952
response.setTags(tagResponses);
29502953
response.setObjectName("staticroute");
@@ -3512,7 +3515,7 @@ public ApplicationLoadBalancerResponse createLoadBalancerContainerReponse(Applic
35123515
List<ResourceTagResponse> tagResponses = new ArrayList<ResourceTagResponse>();
35133516
for (ResourceTag tag : tags) {
35143517
ResourceTagResponse tagResponse = createResourceTagResponse(tag, true);
3515-
tagResponses.add(tagResponse);
3518+
CollectionUtils.addIgnoreNull(tagResponses,tagResponse);
35163519
}
35173520
lbResponse.setTags(tagResponses);
35183521

0 commit comments

Comments
 (0)