~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to storage/myisam/mi_preload.c

  • Committer: Brian Aker
  • Date: 2008-07-14 22:18:37 UTC
  • mfrom: (77.1.96 codestyle)
  • Revision ID: brian@tangent.org-20080714221837-oceoshx7fjkla9u3
Merge from Monty

Show diffs side-by-side

added added

removed removed

Lines of Context:
48
48
  MI_KEYDEF *keyinfo= share->keyinfo;
49
49
  my_off_t key_file_length= share->state.state.key_file_length;
50
50
  my_off_t pos= share->base.keystart;
 
51
  DBUG_ENTER("mi_preload");
51
52
 
52
53
  if (!keys || !mi_is_any_key_active(key_map) || key_file_length == pos)
53
 
    return(0);
 
54
    DBUG_RETURN(0);
54
55
 
55
56
  block_length= keyinfo[0].block_length;
56
57
 
60
61
    for (i= 1 ; i < keys ; i++)
61
62
    {
62
63
      if (keyinfo[i].block_length != block_length)
63
 
        return(my_errno= HA_ERR_NON_UNIQUE_BLOCK_SIZE);
 
64
        DBUG_RETURN(my_errno= HA_ERR_NON_UNIQUE_BLOCK_SIZE);
64
65
    }
65
66
  }
66
67
  else
70
71
  set_if_bigger(length, block_length);
71
72
 
72
73
  if (!(buff= (uchar *) my_malloc(length, MYF(MY_WME))))
73
 
    return(my_errno= HA_ERR_OUT_OF_MEM);
 
74
    DBUG_RETURN(my_errno= HA_ERR_OUT_OF_MEM);
74
75
 
75
76
  if (flush_key_blocks(share->key_cache,share->kfile, FLUSH_RELEASE))
76
77
    goto err;
112
113
  while (pos != key_file_length);
113
114
 
114
115
  my_free((char*) buff, MYF(0));
115
 
  return(0);
 
116
  DBUG_RETURN(0);
116
117
 
117
118
err:
118
119
  my_free((char*) buff, MYF(MY_ALLOW_ZERO_PTR));
119
 
  return(my_errno= errno);
 
120
  DBUG_RETURN(my_errno= errno);
120
121
}
121
122