diff options
author | svoj@april.(none) <> | 2006-12-30 04:36:06 +0400 |
---|---|---|
committer | svoj@april.(none) <> | 2006-12-30 04:36:06 +0400 |
commit | de87e3174cfd0d2c8ec0bc4e1067ac932bfa8ea1 (patch) | |
tree | 2dea83d17804db47e9f3ae000ff61c945e900002 /mysys/thr_lock.c | |
parent | 9d106f7a103a7d1aa58bcaeb7a2eb124d4d318b3 (diff) | |
parent | bcbb50c1d2c1a04b57c012f8efadfeba9d789a15 (diff) | |
download | mariadb-git-de87e3174cfd0d2c8ec0bc4e1067ac932bfa8ea1.tar.gz |
Merge mysql.com:/home/svoj/devel/mysql/merge/mysql-5.0-engines
into mysql.com:/home/svoj/devel/mysql/merge/mysql-5.1-engines
Diffstat (limited to 'mysys/thr_lock.c')
-rw-r--r-- | mysys/thr_lock.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/mysys/thr_lock.c b/mysys/thr_lock.c index 2a1b94a363e..5ce7e99fbdc 100644 --- a/mysys/thr_lock.c +++ b/mysys/thr_lock.c @@ -757,8 +757,16 @@ void thr_unlock(THR_LOCK_DATA *data) } else lock->write.last=data->prev; - if (lock_type >= TL_WRITE_CONCURRENT_INSERT && lock->update_status) - (*lock->update_status)(data->status_param); + if (lock_type >= TL_WRITE_CONCURRENT_INSERT) + { + if (lock->update_status) + (*lock->update_status)(data->status_param); + } + else + { + if (lock->restore_status) + (*lock->restore_status)(data->status_param); + } if (lock_type == TL_READ_NO_INSERT) lock->read_no_write_count--; data->type=TL_UNLOCK; /* Mark unlocked */ |