On 23 Apr 2013, at 4:27 AM, William Lewis <[email protected]> wrote:
> I've tested the patches in 53910, 54610, and 54611 against trunk as well as
> 2.4.4; they apply and they fix their respective bugs (at least as far as my
> test cases go). I don't have an easy way to test 53525, though.
I've committed these to trunk, if you verify for me that the bugs are all fixed
I can then propose them for backport to v2.4.
> The patch in 50773 no longer applies because the code has been reorganized
> somewhat. The bug can still be reproduced in trunk, though, and a glance at
> the new code makes me think the reason for it hasn't changed --- functions
> have been renamed and files have been split but the code the patch touches is
> doing the same things it was before. Someone a bit more familiar with the
> dav lock code probably should be the person to adapt the patch to the new
> world though.
Does this do the trick?
Index: modules/dav/lock/locks.c
===================================================================
--- modules/dav/lock/locks.c (revision 1476625)
+++ modules/dav/lock/locks.c (working copy)
@@ -646,7 +646,8 @@
ip->key.dptr = apr_pmemdup(p, val.dptr + offset, ip->key.dsize);
offset += ip->key.dsize;
- if (!dav_generic_lock_expired(ip->timeout)) {
+ if (!dav_generic_lock_expired(ip->timeout)
+ && dav_dbm_exists(lockdb->info->db, ip->key)) {
ip->next = *indirect;
*indirect = ip;
}
@@ -847,6 +848,7 @@
else {
/* DAV_GETLOCKS_PARTIAL */
newlock->rectype = DAV_LOCKREC_INDIRECT_PARTIAL;
+ newlock->timeout = ip->timeout;
}
/* hook into the result list */
Regards,
Graham
--
smime.p7s
Description: S/MIME cryptographic signature
