On 19 Nov 2003, at 05:03, Oliver Zeigermann wrote:
Hi Stefano,
I am wondering why you check for any lock for the source uri. Also, why no lock for the destination? Why is there no patch for the copy method?
Could you please explain a little bit more?!
Glad you asked ;-)
That bug is *really* subdle and was hard to find. It is basically triggered by the fact that the "move" operation performed between two different stores is not atomic, but it done as "copy" then "delete". But "copy" doesn't (nor should, IMHO) check for the lock of the source uri, but "delete" obviously does. This transforms the "move" of a locked resource a "copy", which is wrong (the litmus tests fail for this reason).
I choose to fix it by checking for the lock on the source URI right away to avoid even trying to do the move if the source URI is locked. This solves the issue cleanly and it's store independent.
As for copy, it is not illegal to copy a locked resource so I didn't check for it.
Thanks for the patch anyway :)
You are welcome. Hope the above explains the rationale behind it.
-- Stefano.
smime.p7s
Description: S/MIME cryptographic signature
