From: Date: December 16 2008 9:36pm Subject: bzr commit into mysql-6.0-falcon-team branch (klewis:2936) Bug#41035 List-Archive: http://lists.mysql.com/commits/61819 X-Bug: 41035 Message-Id: <200812162036.mBGKaQWn007592@mail.mysql.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit #At file:///C:/Work/bzr/Merge/mysql-6.0-falcon-team/ 2936 Kevin Lewis 2008-12-16 (no message) modified: storage/falcon/Table.cpp per-file messages: storage/falcon/Table.cpp Bug#41035 - It is possible for record objects to contain a recordNumber == -1. Table::getSyncPrior() is not prepared for this and will return a bad pointer. === modified file 'storage/falcon/Table.cpp' --- a/storage/falcon/Table.cpp 2008-11-20 17:05:50 +0000 +++ b/storage/falcon/Table.cpp 2008-12-16 20:36:23 +0000 @@ -3808,7 +3808,8 @@ void Table::deleteRecordBacklog(int32 re SyncObject* Table::getSyncPrior(Record* record) { - int lockNumber = record->recordNumber % SYNC_VERSIONS_SIZE; + int recNumber = (record->recordNumber == -1) ? 0 : record->recordNumber; + int lockNumber = recNumber % SYNC_VERSIONS_SIZE; return syncPriorVersions + lockNumber; }