       @emitEnableDisableAllControls false
     else
       @handleLevelChanged()
-      @execSubscriptions?.dispose()
+      @execSubscriptions.dispose()
     return
 
   handleActiveLevelCodeEditorChanged: ->


  toggleBreakpoint: ->
    if !@allControlsDisabled && levelsWorkspaceManager.isActiveLevelDebuggable()
      positions = levelsWorkspaceManager.getActiveTextEditorCursorPositions()
      for pos in positions
        if breakpointManager.toggle pos
          @socketChannel.sendMessage OutgoingMessageFactory.createAddBreakpointMessage PositionUtils.fromPoint pos
        else
          @socketChannel.sendMessage OutgoingMessageFactory.createRemoveBreakpointMessage PositionUtils.fromPoint pos
    return

  removeAllBreakpoints: ->

      enabled = @debuggingEditorId == editor.getId()
      @emitEnableDisableAllControls enabled
    else
      @execSubscriptions.dispose()
      @execSubscriptions = new CompositeDisposable
      @execSubscriptions.add editor.onDidStartExecution => @handleExecutableStarted()
      @execSubscriptions.add editor.onDidStopExecution => @handleExecutableStopped()
