Revision 23220

View differences:

branches/v2_0_0_prep/libraries/libFMap_data/src/org/gvsig/fmap/data/feature/AbstractFeature.java
57 57
			}
58 58
		}
59 59

  
60
		this.evaluatedAttributes = new AttributeDescriptor[list.size()];
60 61
		this.evaluatedAttributesPositions = new int[list.size()];
61 62
		this.evaluatedAttributesEvaluated = new boolean[list.size()];
62 63
		for (int i = 0; i < list.size(); i++) {
......
79 80
		}
80 81
	}
81 82

  
82
	protected void loadEvaluatedAttribute(int i) throws ReadException {
83
		for (int j = 0; j < this.evaluatedAttributesPositions.length; j++) {
84
			if (this.evaluatedAttributesPositions[j] == i) {
85
				if (!this.evaluatedAttributesEvaluated[j]) {
83
	protected void loadEvaluatedAttribute(int index) throws ReadException {
84
		for (int i = 0; i < this.evaluatedAttributesPositions.length; i++) {
85
			if (this.evaluatedAttributesPositions[i] == index) {
86
				if (!this.evaluatedAttributesEvaluated[i]) {
86 87
					FeatureAttributeDescriptor desc = this.evaluatedAttributes[i];
87 88
					Object value = desc.getEvaluator().evaluate(null, this, desc);
88 89
					this.values[desc.ordinal()] = value;
......
92 93
						}
93 94
					}
94 95

  
95
					this.evaluatedAttributesEvaluated[j] = true;
96
					this.evaluatedAttributesEvaluated[i] = true;
96 97
				}
97 98
				break;
98 99
			}

Also available in: Unified diff