mirror of
https://github.com/MariaDB/server.git
synced 2026-10-23 18:49:29 +03:00
MDEV-8073 - Build error in sql/mdl.cc on OS X 10.10
C++03 seem to require default constructor for const objects even though they're fully initialized. There is defect report for this: http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_active.html#253 Apparently some compilers (e.g. gcc) addressed this defect report, while some (e.g. clang) did not. Added empty default constructor to MDL_scoped_lock and MDL_object_lock classes. Also replaced lf_hash_search_using_hash_value() with lf_hash_search(). The latter will call mdl_key->hash_value() anyway.
This commit is contained in:
12
sql/mdl.cc
12
sql/mdl.cc
@@ -346,6 +346,7 @@ public:
|
||||
*/
|
||||
struct MDL_scoped_lock : public MDL_lock_strategy
|
||||
{
|
||||
MDL_scoped_lock() {}
|
||||
virtual const bitmap_t *incompatible_granted_types_bitmap() const
|
||||
{ return m_granted_incompatible; }
|
||||
virtual const bitmap_t *incompatible_waiting_types_bitmap() const
|
||||
@@ -382,6 +383,7 @@ public:
|
||||
*/
|
||||
struct MDL_object_lock : public MDL_lock_strategy
|
||||
{
|
||||
MDL_object_lock() {}
|
||||
virtual const bitmap_t *incompatible_granted_types_bitmap() const
|
||||
{ return m_granted_incompatible; }
|
||||
virtual const bitmap_t *incompatible_waiting_types_bitmap() const
|
||||
@@ -741,8 +743,8 @@ MDL_lock* MDL_map::find_or_insert(LF_PINS *pins, const MDL_key *mdl_key)
|
||||
}
|
||||
|
||||
retry:
|
||||
while (!(lock= (MDL_lock*) lf_hash_search_using_hash_value(&m_locks, pins,
|
||||
mdl_key->hash_value(), mdl_key->ptr(), mdl_key->length())))
|
||||
while (!(lock= (MDL_lock*) lf_hash_search(&m_locks, pins, mdl_key->ptr(),
|
||||
mdl_key->length())))
|
||||
if (lf_hash_insert(&m_locks, pins, (uchar*) mdl_key) == -1)
|
||||
return NULL;
|
||||
|
||||
@@ -780,10 +782,8 @@ MDL_map::get_lock_owner(LF_PINS *pins, const MDL_key *mdl_key)
|
||||
}
|
||||
else
|
||||
{
|
||||
lock= (MDL_lock*) lf_hash_search_using_hash_value(&m_locks, pins,
|
||||
mdl_key->hash_value(),
|
||||
mdl_key->ptr(),
|
||||
mdl_key->length());
|
||||
lock= (MDL_lock*) lf_hash_search(&m_locks, pins, mdl_key->ptr(),
|
||||
mdl_key->length());
|
||||
if (lock)
|
||||
{
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user