protected void setLineState(int line, TState state) { synchronized (lock) { lineStates.set(line, state); if (!state.getIsDirty() && firstDirtyLine != null && firstDirtyLine.equals(line)) { firstDirtyLine++; } if (!state.getIsDirty() && lastDirtyLine != null && lastDirtyLine.equals(line)) { firstDirtyLine = null; lastDirtyLine = null; } } }