~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/item/bin_string.cc

  • Committer: Mark Atwood
  • Date: 2011-10-18 16:54:23 UTC
  • mfrom: (2440.2.4 rf)
  • Revision ID: me@mark.atwood.name-20111018165423-vboh6wowjnvn434f
mergeĀ lp:~olafvdspek/drizzle/refactor4

Show diffs side-by-side

added added

removed removed

Lines of Context:
28
28
  In number context this is a int64_t value.
29
29
*/
30
30
 
31
 
Item_bin_string::Item_bin_string(const char *str, uint32_t str_length)
 
31
Item_bin_string::Item_bin_string(str_ref str_arg)
32
32
{
33
 
  const char *end= str + str_length - 1;
 
33
  const char *str= str_arg.data();
 
34
  const char *end= str + str_arg.size() - 1;
34
35
  unsigned char bits= 0;
35
36
  uint32_t power= 1;
36
37
 
37
 
  max_length= (str_length + 7) >> 3;
 
38
  max_length= (str_arg.size() + 7) >> 3;
38
39
  char *ptr= (char*) memory::sql_alloc(max_length + 1);
39
 
  if (!ptr)
40
 
    return;
41
40
  str_value.set(ptr, max_length, &my_charset_bin);
42
41
  ptr+= max_length - 1;
43
42
  ptr[1]= 0;                     // Set end null for string