           @remove old_chart
 
         @chart_holders[holder_id] = new_chart
-        @add new_chart
-        # Pass the gqueries to the chart
+
+        ## Pass the gqueries to the chart
         for s in data.series
           s.owner = holder_id
           new_chart.series.add(s)
 
-        App.call_api() unless options.wait
-    @last()
+        if options.ignore_lock == undefined
+          @add new_chart
+          App.call_api() unless options.wait
 
   # Returns the chart held in a holder
   #

          # but don't remove the locks, which is what `force: true` would do
          ignore_lock: true
        })

  # adds a chart container, unless it is already in the DOM. Returns the
  # holder_id

  #
  # Returns the newly created chart object or false if something went wrong
  load: (chart_id, holder_id = null, options = {}) =>
    @chart_requests = []

    # if the chart is already there...
    current = @chart_in_holder holder_id
    if current && current.get('chart_id') == chart_id
