~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/item/cmpfunc.cc

  • Committer: Brian Aker
  • Date: 2011-02-24 19:58:57 UTC
  • mfrom: (2183.2.25 list2)
  • mto: This revision was merged to the branch mainline in revision 2199.
  • Revision ID: brian@tangent.org-20110224195857-24p1kalw92bmco2n
More list

Show diffs side-by-side

added added

removed removed

Lines of Context:
3937
3937
    {                                           // Identical function
3938
3938
      li.replace(((Item_cond*) item)->list);
3939
3939
      ((Item_cond*) item)->list.clear();
3940
 
      item= *li.ref();                          // new current item
 
3940
      item= &*li;                               // new current item
3941
3941
    }
3942
3942
    if (abort_on_null)
3943
3943
      item->top_level_item();
3945
3945
    // item can be substituted in fix_fields
3946
3946
    if ((!item->fixed &&
3947
3947
         item->fix_fields(session, li.ref())) ||
3948
 
        (item= *li.ref())->check_cols(1))
 
3948
        (item= &*li)->check_cols(1))
3949
3949
      return true;
3950
3950
    used_tables_cache|=     item->used_tables();
3951
3951
    if (item->const_item())
3985
3985
  {
3986
3986
    table_map tmp_table_map;
3987
3987
    item->fix_after_pullout(new_parent, li.ref());
3988
 
    item= *li.ref();
 
3988
    item= &*li;
3989
3989
    used_tables_cache|= item->used_tables();
3990
3990
    const_item_cache&= item->const_item();
3991
3991
 
4141
4141
    that have or refer (HAVING) to a SUM expression.
4142
4142
*/
4143
4143
 
4144
 
void Item_cond::split_sum_func(Session *session, Item **ref_pointer_array,
4145
 
                               List<Item> &fields)
 
4144
void Item_cond::split_sum_func(Session *session, Item **ref_pointer_array, List<Item> &fields)
4146
4145
{
4147
4146
  List<Item>::iterator li(list.begin());
4148
4147
  Item *item;
4149
4148
  while ((item= li++))
4150
 
    item->split_sum_func(session, ref_pointer_array,
4151
 
                         fields, li.ref(), true);
 
4149
    item->split_sum_func(session, ref_pointer_array, fields, li.ref(), true);
4152
4150
}
4153
4151
 
4154
4152