~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/item/insert_value.cc

Added the testsuite location finding code to support in-plugin-dir test suites.

Show diffs side-by-side

added added

removed removed

Lines of Context:
17
17
 *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
18
18
 */
19
19
 
20
 
#include "config.h"
 
20
#include <drizzled/server_includes.h>
 
21
#include CSTDINT_H
21
22
#include <drizzled/error.h>
22
23
#include <drizzled/name_resolution_context.h>
23
24
#include <drizzled/table.h>
27
28
#include <drizzled/item/default_value.h>
28
29
#include <drizzled/field/null.h>
29
30
 
30
 
namespace drizzled
31
 
{
32
31
 
33
32
bool Item_insert_value::eq(const Item *item, bool binary_cmp) const
34
33
{
69
68
 
70
69
  Item_field *field_arg= (Item_field *)arg;
71
70
 
72
 
  if (field_arg->field->getTable()->insert_values.size())
 
71
  if (field_arg->field->table->insert_values)
73
72
  {
74
 
    Field *def_field= (Field*) memory::sql_alloc(field_arg->field->size_of());
 
73
    Field *def_field= (Field*) sql_alloc(field_arg->field->size_of());
75
74
    if (!def_field)
76
75
      return true;
77
76
    memcpy(def_field, field_arg->field, field_arg->field->size_of());
78
77
    def_field->move_field_offset((ptrdiff_t)
79
 
                                 (&def_field->getTable()->insert_values[0] - def_field->getTable()->record[0]));
 
78
                                 (def_field->table->insert_values -
 
79
                                  def_field->table->record[0]));
80
80
    set_field(def_field);
81
81
  }
82
82
  else
86
86
    tmp_field= new Field_null(0, 0, field_arg->field->field_name, &my_charset_bin);
87
87
    if (tmp_field)
88
88
    {
89
 
      tmp_field->init(field_arg->field->getTable());
 
89
      tmp_field->init(field_arg->field->table);
90
90
      set_field(tmp_field);
91
91
    }
92
92
  }
102
102
}
103
103
 
104
104
 
105
 
} /* namespace drizzled */
 
105