Ignore:
Timestamp:
2009-12-19T10:47:49+01:00 (14 years ago)
Author:
jttt
Message:

Fixed #4161 Major slowdown in recent versions, used correct pattern for listeners realized using CopyOnWriteArrayList

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/data/Preferences.java

    r2645 r2655  
    2626import java.util.Map.Entry;
    2727import java.util.concurrent.CopyOnWriteArrayList;
    28 import java.util.logging.Logger;
    2928import java.util.regex.Matcher;
    3029import java.util.regex.Pattern;
     
    4443 */
    4544public class Preferences {
    46     static private final Logger logger = Logger.getLogger(Preferences.class.getName());
     45    //static private final Logger logger = Logger.getLogger(Preferences.class.getName());
    4746
    4847    /**
     
    131130
    132131    public void addPreferenceChangeListener(PreferenceChangedListener listener) {
    133         if (listener != null && ! listeners.contains(listener)) {
    134             listeners.add(listener);
     132        if (listener != null) {
     133            listeners.addIfAbsent(listener);
    135134        }
    136135    }
    137136
    138137    public void removePreferenceChangeListener(PreferenceChangedListener listener) {
    139         if (listener != null && listeners.contains(listener)) {
    140             listeners.remove(listener);
    141         }
     138        listeners.remove(listener);
    142139    }
    143140
Note: See TracChangeset for help on using the changeset viewer.