This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

View | Details | Raw Unified | Return to bug 128134
Collapse All | Expand All

(-)FreeformEvaluator.java (-3 / +9 lines)
Lines 92-105 Link Here
92
    }
92
    }
93
    
93
    
94
    private PropertyEvaluator initEval() throws IOException {
94
    private PropertyEvaluator initEval() throws IOException {
95
        PropertyProvider preprovider = project.helper().getStockPropertyPreprovider();
96
        List<PropertyProvider> defs = new ArrayList<PropertyProvider>();
97
        synchronized (intermediateEvaluators) {
95
        // Stop listening to old intermediate evaluators.
98
        // Stop listening to old intermediate evaluators.
96
        Iterator<PropertyEvaluator> ieIt = intermediateEvaluators.iterator();
99
        Iterator<PropertyEvaluator> ieIt = intermediateEvaluators.iterator();
97
        while (ieIt.hasNext()) {
100
        while (ieIt.hasNext()) {
98
            ieIt.next().removePropertyChangeListener(this);
101
            ieIt.next().removePropertyChangeListener(this);
99
            ieIt.remove();
102
            ieIt.remove();
100
        }
103
        }
101
        PropertyProvider preprovider = project.helper().getStockPropertyPreprovider();
102
        List<PropertyProvider> defs = new ArrayList<PropertyProvider>();
103
        Element genldata = project.getPrimaryConfigurationData();
104
        Element genldata = project.getPrimaryConfigurationData();
104
        Element properties = Util.findElement(genldata, "properties", FreeformProjectType.NS_GENERAL); // NOI18N
105
        Element properties = Util.findElement(genldata, "properties", FreeformProjectType.NS_GENERAL); // NOI18N
105
        if (properties != null) {
106
        if (properties != null) {
Lines 125-130 Link Here
125
                }
126
                }
126
            }
127
            }
127
        }
128
        }
129
        }
128
        return PropertyUtils.sequentialPropertyEvaluator(preprovider, defs.toArray(new PropertyProvider[defs.size()]));
130
        return PropertyUtils.sequentialPropertyEvaluator(preprovider, defs.toArray(new PropertyProvider[defs.size()]));
129
    }
131
    }
130
    
132
    
Lines 173-179 Link Here
173
    public void propertyChange(PropertyChangeEvent propertyChangeEvent) {
175
    public void propertyChange(PropertyChangeEvent propertyChangeEvent) {
174
        Object source = propertyChangeEvent.getSource();
176
        Object source = propertyChangeEvent.getSource();
175
        assert source instanceof PropertyEvaluator : source;
177
        assert source instanceof PropertyEvaluator : source;
176
        if (intermediateEvaluators.contains(source)) {
178
        boolean contains;
179
        synchronized (intermediateEvaluators) {
180
            contains = intermediateEvaluators.contains(source);
181
        }
182
        if (contains) {
177
            // A <property-file> may have changed location. Generally need to rebuild the list of definers.
183
            // A <property-file> may have changed location. Generally need to rebuild the list of definers.
178
            fireAnyChange();
184
            fireAnyChange();
179
        } else {
185
        } else {

Return to bug 128134