     @markers = null
 
   markRange: (startRow, endRow, scope) ->
-    try
-      marker = @editor.markBufferRange([[startRow, 0], [endRow, Infinity]], invalidate: 'never')
-      @minimapView.decorateMarker(marker, type: 'line', scope: scope)
-      @markers ?= []
-      @markers.push(marker)
-    catch e
-      console.warn 'markRange failed', e.stack
+    return if @editor.getBuffer().isDestroyed()
+    marker = @editor.markBufferRange([[startRow, 0], [endRow, Infinity]], invalidate: 'never')
+    @minimapView.decorateMarker(marker, type: 'line', scope: scope)
+    @markers ?= []
+    @markers.push(marker)
 
   destroy: ->
     @removeDecorations()


  updateDiffs: =>
    @removeDecorations()
    if path = @getPath()
      if @diffs = @getDiffs()
        @addDecorations(@diffs)

  addDecorations: (diffs) ->
    for {oldStart, newStart, oldLines, newLines} in diffs

        @markRange(startRow, startRow, '.minimap .git-line-removed')
      else
        @markRange(startRow, endRow, '.minimap .git-line-modified')

  removeDecorations: ->
    return unless @markers?
