diff options
author | Sergei Golubchik <sergii@pisem.net> | 2010-10-28 19:04:23 +0200 |
---|---|---|
committer | Sergei Golubchik <sergii@pisem.net> | 2010-10-28 19:04:23 +0200 |
commit | 8e7ebfbce89a472b3c5a6c30e6de101e567a8218 (patch) | |
tree | 9f9950feb45222c7df4f37c841f4af593ec75ee5 /sql/ha_partition.cc | |
parent | 3bdede3c67032345ca5f71dd53ca308377dc2398 (diff) | |
parent | 7c24e8d54d1d41374b7836e3273e7e5eaf22e2c4 (diff) | |
download | mariadb-git-8e7ebfbce89a472b3c5a6c30e6de101e567a8218.tar.gz |
5.2 merge
Diffstat (limited to 'sql/ha_partition.cc')
-rw-r--r-- | sql/ha_partition.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sql/ha_partition.cc b/sql/ha_partition.cc index e76b3607249..b777b26bab0 100644 --- a/sql/ha_partition.cc +++ b/sql/ha_partition.cc @@ -2406,9 +2406,14 @@ bool ha_partition::get_from_handler_file(const char *name, MEM_ROOT *mem_root) tot_partition_words= (m_tot_parts + 3) / 4; engine_array= (handlerton **) my_alloca(m_tot_parts * sizeof(handlerton*)); for (i= 0; i < m_tot_parts; i++) + { engine_array[i]= ha_resolve_by_legacy_type(ha_thd(), (enum legacy_db_type) - *(uchar *) ((file_buffer) + 12 + i)); + *(uchar *) ((file_buffer) + + 12 + i)); + if (!engine_array[i]) + goto err3; + } address_tot_name_len= file_buffer + 12 + 4 * tot_partition_words; tot_name_words= (uint4korr(address_tot_name_len) + 3) / 4; if (len_words != (tot_partition_words + tot_name_words + 4)) |