[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: (ITS#7955) [LMDB] remove logically dead code
- To: openldap-its@OpenLDAP.org
- Subject: Re: (ITS#7955) [LMDB] remove logically dead code
- From: hyc@symas.com
- Date: Thu, 02 Oct 2014 20:59:12 +0000
- Auto-submitted: auto-generated (OpenLDAP-ITS)
jcd@tribudubois.net wrote:
> Full_Name: Jean-Christophe Dubois
> Version: 2.4.40
> OS: Linux
> URL: ftp://ftp.openldap.org/incoming/
> Submission from: (NULL) (78.235.240.156)
>
>
> In mdb_cursor_prev() there is some dead code as the (op == MDB_PREV_DUP) cannot
> be reached in the else block of the following if condition:
Apparently caused by commit 6423c877 for ITS#7671. Unfortunately you've
identified an actual bug, the current code will fail to return NOTFOUND when
it should. I.e., if the caller used MDB_PREV_DUP and the current node has no
DUPDATA.
Fixed in mdb.master.
>
> if (op == MDB_PREV || op == MDB_PREV_DUP) {
> ...
> } else {
> ...
> if (op == MDB_PREV_DUP)
> ...
> }
>
> The dead code can be removed.
>
> Patch available at the following URL:
>
> https://github.com/jcdubois/lmdb/commit/87c58701f7b7226d6d7bcf6be18db085cce0c592
>
> JC
>
>
>
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/