~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/set_var.h

  • Committer: Monty Taylor
  • Date: 2008-12-08 07:41:44 UTC
  • mto: This revision was merged to the branch mainline in revision 670.
  • Revision ID: monty@inaugust.com-20081208074144-bcv10c8p9g1h2n0z
Got closer...

Show diffs side-by-side

added added

removed removed

Lines of Context:
23
23
#include <drizzled/functions/func.h>
24
24
#include <drizzled/functions/set_user_var.h>
25
25
 
 
26
#include <string>
 
27
 
26
28
/* Classes to support the SET command */
27
29
 
28
30
 
1128
1130
 
1129
1131
class NAMED_LIST :public ilink
1130
1132
{
1131
 
  const char *name;
1132
 
  uint32_t name_length;
 
1133
  std::string name;
1133
1134
public:
1134
1135
  unsigned char* data;
1135
1136
 
1136
1137
  NAMED_LIST(I_List<NAMED_LIST> *links, const char *name_arg,
1137
 
             uint32_t name_length_arg, unsigned char* data_arg)
1138
 
    :name_length(name_length_arg), data(data_arg)
1139
 
  {
1140
 
    name= (const char *)malloc(name_length);
1141
 
    strncpy((char *)name, name_arg, name_length);
1142
 
    links->push_back(this);
1143
 
  }
1144
 
  inline bool cmp(const char *name_cmp, uint32_t length)
1145
 
  {
1146
 
    return length == name_length && !memcmp(name, name_cmp, length);
1147
 
  }
1148
 
  ~NAMED_LIST()
1149
 
  {
1150
 
    free((unsigned char*) name);
1151
 
  }
 
1138
                   uint32_t name_length_arg, unsigned char* data_arg);
 
1139
  bool cmp(const char *name_cmp, uint32_t length);
1152
1140
  friend bool process_key_caches(process_key_cache_t func);
1153
1141
  friend void delete_elements(I_List<NAMED_LIST> *list,
1154
 
                              void (*free_element)(const char*, unsigned char*));
 
1142
                              void (*free_element)(const char*,
 
1143
                                                   unsigned char*));
1155
1144
};
1156
1145
 
1157
1146
/* updated in sql_acl.cc */