]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.databoard/src/org/simantics/databoard/binding/impl/TreeSetBinding.java
Merge commit '5da68e7'
[simantics/platform.git] / bundles / org.simantics.databoard / src / org / simantics / databoard / binding / impl / TreeSetBinding.java
index 304b3cad4a4dc80e0150ca86618f6f27957abf51..50028b3a164914a10d1d859f4d1e1a7f724f9190 100644 (file)
@@ -58,12 +58,15 @@ public class TreeSetBinding extends MapBinding {
                return false;
        }
 
-       @Override
-       public Object create() throws BindingException {
-               return new TreeSet<Object>( getKeyBinding() );
-       }
-
-       public Object create(Set<?> initialSet) throws BindingException {
+    @Override\r
+    public Object create() throws BindingException {\r
+        return new TreeSet<Object>( getKeyBinding() );\r
+    }\r
+\r
+       public Object create(Set<?> initialSet) throws BindingException {\r
+           if (initialSet instanceof TreeSet && ((TreeSet<?>) initialSet).comparator() == getKeyBinding())\r
+               return initialSet;\r
+           
                TreeSet<Object> result = new TreeSet<Object>(getKeyBinding());
                result.addAll(initialSet);
                return result;