| commit | c731688bcd8d2e424ab43d751b6a963c0d35929a | [log] [tgz] |
|---|---|---|
| author | Stephan Wahlbrink <sw@wahlbrink.eu> | Thu Nov 21 12:56:58 2013 +0100 |
| committer | Stephan Wahlbrink <sw@wahlbrink.eu> | Fri Nov 22 07:42:41 2013 +0100 |
| tree | 371d42b3daf9c598454565ffa4bd4276e6fdd843 | |
| parent | 074da74fab1fc1a1dca88d4abbcbb39a101fa399 [diff] |
Bug 413207: Fixed NPE if there is no underlying layer/dim
diff --git a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/DimBasedLayer.java b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/DimBasedLayer.java index 57bf9ef..76c2145 100644 --- a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/DimBasedLayer.java +++ b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/DimBasedLayer.java
@@ -43,6 +43,9 @@ } private static List<ILayer> convertDim2LayerList(final Collection<ILayerDim> dims) { + if (dims == null) { + return null; + } switch (dims.size()) { case 0: return Collections.emptyList();
diff --git a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/HorizontalLayerDim.java b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/HorizontalLayerDim.java index af6f29b..d20a0ae 100644 --- a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/HorizontalLayerDim.java +++ b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/HorizontalLayerDim.java
@@ -69,6 +69,10 @@ public List<ILayerDim> getUnderlyingDimsByPosition(final int position) { final Collection<ILayer> underlyingLayers = this.layer.getUnderlyingLayersByColumnPosition( position ); + if (underlyingLayers == null) { + return null; + } + final List<ILayerDim> underlyingDims = new ArrayList<ILayerDim>(underlyingLayers.size()); for (final ILayer underlyingLayer : underlyingLayers) { underlyingDims.add(underlyingLayer.getDim(this.orientation));
diff --git a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/VerticalLayerDim.java b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/VerticalLayerDim.java index b053767..06e3933 100644 --- a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/VerticalLayerDim.java +++ b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/layer/VerticalLayerDim.java
@@ -69,6 +69,10 @@ public List<ILayerDim> getUnderlyingDimsByPosition(final int position) { final Collection<ILayer> underlyingLayers = this.layer.getUnderlyingLayersByRowPosition( position ); + if (underlyingLayers == null) { + return null; + } + final List<ILayerDim> underlyingDims = new ArrayList<ILayerDim>(underlyingLayers.size()); for (final ILayer underlyingLayer : underlyingLayers) { underlyingDims.add(underlyingLayer.getDim(this.orientation));