~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/item/insert_value.cc

  • Committer: Padraig O'Sullivan
  • Date: 2009-09-13 01:03:01 UTC
  • mto: (1126.9.2 captain-20090915-01)
  • mto: This revision was merged to the branch mainline in revision 1133.
  • Revision ID: osullivan.padraig@gmail.com-20090913010301-tcvvezipx1124acy
Added calls to the dtrace delete begin/end probes.

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
{
71
70
 
72
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
 
    def_field->move_field_offset((ptrdiff_t)
 
77
    def_field->move_field_offset((my_ptrdiff_t)
79
78
                                 (def_field->table->insert_values -
80
79
                                  def_field->table->record[0]));
81
80
    set_field(def_field);
84
83
  {
85
84
    Field *tmp_field= field_arg->field;
86
85
    /* charset doesn't matter here, it's to avoid sigsegv only */
87
 
    tmp_field= new Field_null(0, 0, field_arg->field->field_name, &my_charset_bin);
 
86
    tmp_field= new Field_null(0, 0, Field::NONE, field_arg->field->field_name,
 
87
                          &my_charset_bin);
88
88
    if (tmp_field)
89
89
    {
90
90
      tmp_field->init(field_arg->field->table);
103
103
}
104
104
 
105
105
 
106
 
} /* namespace drizzled */
 
106