diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2019-10-18 09:05:27 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2019-10-18 09:05:27 +0300 |
commit | 0b9cee2cbfe6bce17dca980764076c65e14513f5 (patch) | |
tree | b7bed7be09af6318bb1f7d6c1ebafee83c1ac8b4 /sql/keycaches.cc | |
parent | de2186dd2f5937a56d799f55c33078a7ad8ebddc (diff) | |
parent | fa929f7cdf71e351a64639815d84ae5d4f3dc053 (diff) | |
download | mariadb-git-0b9cee2cbfe6bce17dca980764076c65e14513f5.tar.gz |
Merge 10.2 into 10.3
Diffstat (limited to 'sql/keycaches.cc')
-rw-r--r-- | sql/keycaches.cc | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/sql/keycaches.cc b/sql/keycaches.cc index f38a43f83cf..60049cdd67d 100644 --- a/sql/keycaches.cc +++ b/sql/keycaches.cc @@ -68,7 +68,7 @@ uchar* find_named(I_List<NAMED_ILINK> *list, const char *name, size_t length, } -bool NAMED_ILIST::delete_element(const char *name, size_t length, void (*free_element)(const char *name, uchar*)) +bool NAMED_ILIST::delete_element(const char *name, size_t length, void (*free_element)(const char *name, void*)) { I_List_iterator<NAMED_ILINK> it(*this); NAMED_ILINK *element; @@ -85,7 +85,7 @@ bool NAMED_ILIST::delete_element(const char *name, size_t length, void (*free_el DBUG_RETURN(1); } -void NAMED_ILIST::delete_elements(void (*free_element)(const char *name, uchar*)) +void NAMED_ILIST::delete_elements(void (*free_element)(const char *name, void*)) { NAMED_ILINK *element; DBUG_ENTER("NAMED_ILIST::delete_elements"); @@ -157,9 +157,9 @@ KEY_CACHE *get_or_create_key_cache(const char *name, size_t length) } -void free_key_cache(const char *name, KEY_CACHE *key_cache) +void free_key_cache(const char *name, void *key_cache) { - end_key_cache(key_cache, 1); // Can never fail + end_key_cache(static_cast<KEY_CACHE *>(key_cache), 1); // Can never fail my_free(key_cache); } @@ -221,13 +221,12 @@ Rpl_filter *get_or_create_rpl_filter(const char *name, size_t length) return filter; } -void free_rpl_filter(const char *name, Rpl_filter *filter) +void free_rpl_filter(const char *name, void *filter) { - delete filter; - filter= 0; + delete static_cast<Rpl_filter*>(filter); } void free_all_rpl_filters() { - rpl_filters.delete_elements((void (*)(const char*, uchar*)) free_rpl_filter); + rpl_filters.delete_elements(free_rpl_filter); } |