Make the ComponentPresetChooserDialog more forgiving about presets which are missing...
[debian/openrocket] / core / src / net / sf / openrocket / gui / dialogs / preset / ComponentPresetChooserDialog.java
index 22b9753a4142ac11f593de3de651a4e813c67282..c6a917f6d8218e97f169c09fe001a0d261210632 100644 (file)
@@ -96,11 +96,15 @@ public class ComponentPresetChooserDialog extends JDialog {
                        columns[i+1] = new Column(trans.get("table.column." + columnKeys[i].getName())) {
                                @Override
                                public Object getValueAt(int row) {
+                                       ComponentPreset preset = ComponentPresetChooserDialog.this.presets.get(row);
+                                       if ( ! preset.has(key) ) {
+                                               return null;
+                                       }
+                                       Object value = preset.get(key);
                                        if (key.getType() == Double.class && key.getUnitGroup() != null) {
-                                               double v = (Double) ComponentPresetChooserDialog.this.presets.get(row).get(key);
-                                               return new Value( v, key.getUnitGroup() );
+                                               return new Value( (Double) value, key.getUnitGroup() );
                                        } else {
-                                               return ComponentPresetChooserDialog.this.presets.get(row).get(key);
+                                               return value;
                                        }
                                }
                        };