summaryrefslogtreecommitdiff
path: root/storage/pbxt/src
diff options
context:
space:
mode:
authorPaul McCullagh <paul.mccullagh@primebase.org>2009-11-25 16:40:51 +0100
committerPaul McCullagh <paul.mccullagh@primebase.org>2009-11-25 16:40:51 +0100
commit01af3ae553ed5ebe5be90045162aab90b7587e5a (patch)
treecd89f54bedeabdfd5bd7f2cce22789d2f5da3301 /storage/pbxt/src
parent01b784196df183bc554fc3077b0a34777e94db55 (diff)
downloadmariadb-git-01af3ae553ed5ebe5be90045162aab90b7587e5a.tar.gz
And don't forget sub-partitions!
Diffstat (limited to 'storage/pbxt/src')
-rw-r--r--storage/pbxt/src/table_xt.cc19
1 files changed, 18 insertions, 1 deletions
diff --git a/storage/pbxt/src/table_xt.cc b/storage/pbxt/src/table_xt.cc
index bd8e9b6ff3d..55cc695e7c2 100644
--- a/storage/pbxt/src/table_xt.cc
+++ b/storage/pbxt/src/table_xt.cc
@@ -5241,9 +5241,26 @@ static void tab_make_table_name(XTTableHPtr tab, char *table_name, size_t size)
if (part_ptr) {
/* Add the partition extension (which is relevant to the engine). */
+ char *sub_part_ptr;
+
+ part_ptr += 3;
+ if ((sub_part_ptr = strstr(part_ptr, "#SP#")))
+ xt_strncpy(sizeof(name_buf), name_buf, part_ptr, sub_part_ptr - part_ptr);
+ else
+ xt_strcpy(sizeof(name_buf), name_buf, part_ptr);
+
xt_strcat(size, table_name, " (");
len = strlen(table_name);
- myxt_static_convert_file_name(part_ptr+3, table_name + len, size - len);
+ myxt_static_convert_file_name(name_buf, table_name + len, size - len);
+
+ if (sub_part_ptr) {
+
+ sub_part_ptr += 4;
+ xt_strcat(size, table_name, " - ");
+ len = strlen(table_name);
+ myxt_static_convert_file_name(sub_part_ptr, table_name + len, size - len);
+ }
+
xt_strcat(size, table_name, ")");
}
}