~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/function/set_user_var.cc

  • Committer: Brian Aker
  • Date: 2009-04-13 16:22:40 UTC
  • mfrom: (971.1.78 mordred)
  • Revision ID: brian@gaz-20090413162240-ugi3gvhofmcuglzl
Merge Monty

Show diffs side-by-side

added added

removed removed

Lines of Context:
26
26
#include <drizzled/virtual_column_info.h>
27
27
#include <drizzled/session.h>
28
28
 
 
29
#include <bitset>
 
30
 
 
31
using namespace std;
 
32
 
29
33
/*
30
34
  When a user variable is updated (in a SET command or a query like
31
35
  SELECT @a:= ).
90
94
  {
91
95
    Table *table= (Table *) arg;
92
96
    if (result_field->table == table || !table)
93
 
      bitmap_set_bit(result_field->table->read_set, result_field->field_index);
 
97
      result_field->table->read_set->set(result_field->field_index);
94
98
    if (result_field->vcol_info && result_field->vcol_info->expr_item)
95
99
      return result_field->vcol_info->
96
100
               expr_item->walk(&Item::register_field_in_read_map, 1, arg);
105
109
 
106
110
bool Item_func_set_user_var::register_field_in_bitmap(unsigned char *arg)
107
111
{
108
 
  MY_BITMAP *bitmap = (MY_BITMAP *) arg;
 
112
  bitset<MAX_FIELDS> *bitmap = (bitset<MAX_FIELDS> *) arg;
109
113
  assert(bitmap);
110
114
  if (result_field)
111
115
  {
112
 
    bitmap_set_bit(bitmap, result_field->field_index);
 
116
    bitmap->set(result_field->field_index);
113
117
  }
114
118
  return 0;
115
119
}