       source = @mget('data_source')
       t0 = Date.now()
 
-      @all_indices = @glyph.set_data(source)
+      @all_indices = @glyphView.set_data(source)
 
       @selection_glyph.set_data(source)
       @nonselection_glyph.set_data(source)
 
       dt = Date.now() - t0
-      logger.debug("#{@glyph.model.type} glyph (#{@glyph.model.id}): set_data finished in #{dt}ms")
+      logger.debug("#{@glyphView.model.type} glyph (#{@glyphView.model.id}): set_data finished in #{dt}ms")
 
       @have_new_data = true
 

      t0 = Date.now()

      if not (selected_indices and selected_indices.length and @have_selection_glyphs())
        do_render(ctx, indices, @glyph)
      else
        # reset the selection mask
        selected_mask = (false for i in @all_indices)

        do_render(ctx, nonselected, @nonselection_glyph)

      dt = Date.now() - t0
      logger.trace("#{@glyphView.model.type} glyph (#{@glyphView.model.id}): do_render calls finished in #{dt}ms")

      @have_new_data = false
      ctx.restore()
