     @tagsByCode = new Map
     @nextOpenTagCode = -1
     @indexedBufferRowCount = 0
-    @bufferChangeBeingProcessed = null
+    @processingBufferChange = false
     @reset({
       invisibles: settings.invisibles ? {}
       tabLength: settings.tabLength ? 4

    newRowExtent = spatialScreenLines.length
    @spliceDisplayIndex(startScreenRow, oldRowExtent, spatialScreenLines)
    @indexedBufferRowCount += newRange.end.row - oldRange.end.row
    @bufferChangeBeingProcessed = null
    start = Point(startScreenRow, 0)
    oldExtent = Point(oldRowExtent, 0)
    newExtent = Point(newRowExtent, 0)

    endRow = change.oldRange.end.row
    endRow++ while @buffer.lineForRow(endRow + 1)?.length is 0
    @computeSpatialScreenLinesThroughBufferRow(endRow)
    @processingBufferChange = true

  bufferDidChange: (change) ->
    {oldRange, newRange} = @expandChangeRegionToSurroundingEmptyLines(change)

    {startScreenRow, endScreenRow, startBufferRow, endBufferRow} = @expandBufferRangeToLineBoundaries(oldRange)
    endBufferRow = newRange.end.row + (endBufferRow - oldRange.end.row)
