Skip to content

Commit 359c48b

Browse files
committed
[FIX] synchronize adding/removing cellEditorListener
Fixes #111
1 parent a69db83 commit 359c48b

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

src/main/java/net/seesharpsoft/intellij/plugins/csv/editor/table/swing/MultiLineCellRenderer.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
public class MultiLineCellRenderer extends JTextArea implements TableCellRenderer, TableCellEditor {
1919

20-
private Set<CellEditorListener> cellEditorListenerSet = Collections.synchronizedSet(new HashSet<>());
20+
private Set<CellEditorListener> cellEditorListenerSet = new HashSet<>();
2121
private final UserDataHolder userDataHolder;
2222

2323
public MultiLineCellRenderer(CsvTableEditorKeyListener keyListener, UserDataHolder userDataHolderParam) {
@@ -142,11 +142,15 @@ protected void fireCancelCellEditing() {
142142

143143
@Override
144144
public void addCellEditorListener(CellEditorListener cellEditorListener) {
145-
cellEditorListenerSet.add(cellEditorListener);
145+
synchronized (cellEditorListenerSet) {
146+
cellEditorListenerSet.add(cellEditorListener);
147+
}
146148
}
147149

148150
@Override
149151
public void removeCellEditorListener(CellEditorListener cellEditorListener) {
150-
cellEditorListenerSet.remove(cellEditorListener);
152+
synchronized (cellEditorListenerSet) {
153+
cellEditorListenerSet.remove(cellEditorListener);
154+
}
151155
}
152156
}

0 commit comments

Comments
 (0)