~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/item/cmpfunc.cc

updating

Show diffs side-by-side

added added

removed removed

Lines of Context:
477
477
      Item *tmp= new Item_int_with_ref(field->val_int(), *item,
478
478
                                       test(field->flags & UNSIGNED_FLAG));
479
479
      if (tmp)
480
 
        session->change_item_tree(item, tmp);
 
480
        *item= tmp;
481
481
      result= 1;                                        // Item was replaced
482
482
    }
483
483
 
1677
1677
  new_item= (*args)->transform(transformer, argument);
1678
1678
  if (!new_item)
1679
1679
    return 0;
1680
 
  /*
1681
 
    Session::change_item_tree() should be called only if the tree was
1682
 
    really transformed, i.e. when a new item has been created.
1683
 
    Otherwise we'll be allocating a lot of unnecessary memory for
1684
 
    change records at each execution.
1685
 
  */
1686
 
  if ((*args) != new_item)
1687
 
    getSession().change_item_tree(args, new_item);
 
1680
  *args= new_item;
1688
1681
 
1689
1682
  /*
1690
1683
    Transform the right IN operand which should be an Item_in_subselect or a
4040
4033
    Item *new_item= item->transform(transformer, arg);
4041
4034
    if (!new_item)
4042
4035
      return 0;
4043
 
 
4044
 
    /*
4045
 
      Session::change_item_tree() should be called only if the tree was
4046
 
      really transformed, i.e. when a new item has been created.
4047
 
      Otherwise we'll be allocating a lot of unnecessary memory for
4048
 
      change records at each execution.
4049
 
    */
4050
 
    if (new_item != item)
4051
 
      getSession().change_item_tree(li.ref(), new_item);
 
4036
    *li.ref()= new_item;
4052
4037
  }
4053
4038
  return Item_func::transform(transformer, arg);
4054
4039
}
5176
5161
    Item *new_item= item->transform(transformer, arg);
5177
5162
    if (!new_item)
5178
5163
      return 0;
5179
 
 
5180
 
    /*
5181
 
      Session::change_item_tree() should be called only if the tree was
5182
 
      really transformed, i.e. when a new item has been created.
5183
 
      Otherwise we'll be allocating a lot of unnecessary memory for
5184
 
      change records at each execution.
5185
 
    */
5186
 
    if (new_item != item)
5187
 
      getSession().change_item_tree((Item **) it.ref(), new_item);
 
5164
    *(Item **)it.ref()= new_item;
5188
5165
  }
5189
5166
  return Item_func::transform(transformer, arg);
5190
5167
}