~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to server/item_func.cc

  • Committer: Brian Aker
  • Date: 2008-07-12 20:42:47 UTC
  • mfrom: (134.1.2 drizzle)
  • Revision ID: brian@tangent.org-20080712204247-25xybfz5mgd050zo
Merge Mark's UDF Example

Show diffs side-by-side

added added

removed removed

Lines of Context:
2749
2749
** Rewritten by monty.
2750
2750
****************************************************************************/
2751
2751
 
2752
 
#ifdef HAVE_DLOPEN
2753
 
 
2754
2752
void udf_handler::cleanup()
2755
2753
{
2756
2754
  if (!not_original)
2762
2760
        Udf_func_deinit deinit= u_d->func_deinit;
2763
2761
        (*deinit)(&initid);
2764
2762
      }
2765
 
      free_udf(u_d);
 
2763
 
2766
2764
      initialized= false;
2767
2765
    }
2768
2766
    if (buffers)                                // Because of bug in ecc
2802
2800
          sql_alloc(f_args.arg_count*sizeof(Item_result))))
2803
2801
 
2804
2802
    {
2805
 
      free_udf(u_d);
2806
2803
      return(true);
2807
2804
    }
2808
2805
    uint i;
2849
2846
        !(f_args.attribute_lengths= (ulong*) sql_alloc(arg_count *
2850
2847
                                                       sizeof(long))))
2851
2848
    {
2852
 
      free_udf(u_d);
2853
2849
      return(true);
2854
2850
    }
2855
2851
  }
2918
2914
    {
2919
2915
      my_error(ER_CANT_INITIALIZE_UDF, MYF(0),
2920
2916
               u_d->name.str, init_msg_buff);
2921
 
      free_udf(u_d);
2922
2917
      return(true);
2923
2918
    }
2924
2919
    func->max_length=min(initid.max_length,MAX_BLOB_WIDTH);
3195
3190
  assert(not_original || !(initialized || buffers));
3196
3191
}
3197
3192
 
3198
 
#else
3199
 
bool udf_handler::get_arguments() { return 0; }
3200
 
#endif /* HAVE_DLOPEN */
3201
 
 
3202
3193
/*
3203
3194
** User level locks
3204
3195
*/